电话号码Jquery验证......需要数字和其他一些字符

时间:2018-04-16 08:59:19

标签: javascript jquery

有人帮我创建了一个jquery联系表单,并进行了字段验证。有一个电话号码字段。该字段仅允许数字。我们需要该字段还包含一些其他常见的“电话”字符...例如() - 。和空间。有人可以帮我修改下面的代码......

// only numberic value validation
    $( ".only_numberic" ).keypress(function(event){
        var inputValue = window.event ? event.keyCode : event.which;

        // allow letters and whitespaces only.
        if(    !( inputValue >= 48 && inputValue <= 57) && (inputValue != 0 && inputValue != 8 && inputValue != 9 ) ) {  
            event.preventDefault(); 
        }
    });

注意:我不介意该类仍然是“only_numberic”(这只是一个名字)...只需要修复验证。

最终修正

以下是有效的最终修复方法。

// only numberic value validation
$( ".only_numberic" ).keypress(function(event){
    var inputValue = window.event ? event.keyCode : event.which;

    // allow letters and whitespaces only, and () and - and period[.] and (space).
    if(    !( inputValue >= 48 && inputValue <= 57) && (inputValue != 0 && inputValue != 8 && inputValue != 9 && inputValue!=40 && inputValue!=41 && inputValue!=45 && inputValue!=46 && inputValue!=32) ) {  
        event.preventDefault(); 
    }
});

2 个答案:

答案 0 :(得分:2)

这是代码。复制此功能并添加&#34;数字输入&#34;类到您的文本框。它只接受数字和空间。您可以通过在此数组中添加ASCII值来添加更多字符:

[32,46, 8, 9, 27, 13, 110, 190]

电话号码:<input type="text" class="number-input">

$(document).on('keydown','.number-input',function(e){
  console.log(e.keyCode);
    if ($.inArray(e.keyCode, [32,46, 8, 9, 27, 13, 110, 190]) !== -1 ||
        // Allow: Ctrl+A, Command+A
        (e.keyCode === 65 && (e.ctrlKey === true || e.metaKey === true)) ||
        // Allow: home, end, left, right, down, up
        (e.keyCode >= 35 && e.keyCode <= 40)) {
        // let it happen, don't do anything
        return;
    }
    // Ensure that it is a number and stop the keypress
    if ((e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) && (e.keyCode < 96 || e.keyCode > 105)) {
        e.preventDefault();
    }
});

答案 1 :(得分:0)

$(document).ready( function (){   $( "#mobile-num" ).on( "blur" , functi
var mobNum = $( this ).val();
var filter = /^\d*(?:\.\d{1,
if (filter.test(mobNum)) {
if (mobNum.length!= 10 ){
                  alert( "valid" );

             } else {
                alert( 'Please put 10

return false;
              }
            }
else {
              alert("not a vaild number");
return false;
           }   });
});