如何仅允许文本框中的电话号码并自动分配?

时间:2017-06-29 21:46:22

标签: javascript c# jquery asp.net asp.net-mvc

疯狂的长标题是为了避免被标记为重复。

我有一个用于输入10位数美国电话号码的文本框,例如222-333-4444。我希望在用户输入更多数字时自动添加短划线,类似于Chrome处理box flagged as a date的方式。斜线显示但不是真的......那里。键入8个数字会填充日期框。

我还希望号码能够添加到文本框中,且不超过10个。

似乎必须有一个我可以用于此的框架 - 这个问题不可能是唯一的。

我现在只是偶尔插入斜杠。

<script>
    $(document).ready(function () {
        var textBox = $("#PhoneNumber");
        $(textBox).keyup(function () {
            var val = textBox.val().replace(/-/g, "");
            val = val.match(/\d{3}(?=\d{2,3})|\d+/g).join("-");
            textBox.val(val);
        });
    });
</script>

1 个答案:

答案 0 :(得分:1)

JQUery面具可能就是你要找的东西: https://igorescobar.github.io/jQuery-Mask-Plugin/

一旦包含,那就像

一样简单
  $('.phone').mask('0000-0000');
  $('.phone_with_ddd').mask('(00) 0000-0000');
  $('.phone_us').mask('(000) 000-0000');