0

モバイル番号をテストする正規表現を作成したい (10 桁、開始桁は 7、8、9 のいずれか)

私はこれを解決しました -> /^(7|8|9)[\d]{9,9}$/

私のコードは

function testPhone()
    {
       var pattern = /^(7|8|9)[\d]{9,9}$/;
        var phoneNo = document.getElementById('phoneNo');

            if (!pattern.test(phoneNo))
            {
                alert("It is not valid mobile number!");
            }

    }



 <input type="text" name="phoneNo"  maxlength="10"  size="10"  >
 <input type="submit" value="Search" onclick="testPhone()">

どういうわけか、常に警告メッセージが表示されます。ここ (http://www.regextester.com/) で正規表現もテストしました。ここで動作します。助けてください。

4

3 に答える 3

4

これは

var phoneNo = document.getElementById('phoneNo').value;

に注意してください.value

ああ、あなたの入力にはid.

于 2012-11-11T14:15:05.563 に答える
3

あなたは忘れました.value

var phoneNo = document.getElementById('phoneNo').value;

このパターンを試して、

^[7-9](\d){9}$
于 2012-11-11T14:17:45.710 に答える
1

そのはず

var phoneNo = document.getElementById('phoneNo').value;
                                                   ^

そして正規表現は

/^(7|8|9)\d{9}$/

必要は {9,9}ありません[\d]

于 2012-11-11T14:15:44.550 に答える