1

連絡先番号フィールドを検証しようとしていますが、文字は許可されていません。

JSファイル

$(document).ready(function() {
    //var regex = /[^\d]/;
    var regex = /[^a-zA-Z]/;
    $('#contact_num').blur(function() {
        if(regex.test($(this).val()) == true) {
            alert('valid');
        } else {
            alert('invalid');
        }
    });
});​

HTMLファイル

Contact Num: <input type="text" id="contact_num" />​

ここでの私の正規表現は、文字に数字が付いている場合は有効に返されるようですが、これはfalseである必要があります。

デモ


4

2 に答える 2

2

あなたは非常に近いですが、1文字しかチェックしていません。側面にアンカー文字が必要です。

var regex = /^[^a-zA-Z]+$/;
于 2012-05-03T16:19:05.220 に答える
1

文字だけを許可せず、他の文字を許可する場合は、正規表現と条件を逆にする必要があります。

var regex = /[a-zA-Z]/;
...
if( !regex.test($(this).val()) ) {

http://jsfiddle.net/PYwLJ/3/

于 2012-05-03T16:22:49.013 に答える