1

ユーザーが携帯電話番号を入力する必要があるテキストボックスがあります。ただし、最初の 2 つの数字 (文字) を検証して、携帯電話番号が正しい形式であることを確認する必要があります (検証規則の 1 つとして)。

携帯電話番号は、次の 2 桁のいずれかで始まる必要があります。

44xxxxxx 55xxxxxx 65xxxxxx 78xxxxxx

最初の 2 文字の数字を検証し、それらが上記のオプションのいずれかであることを確認する方法を誰か教えてもらえますか?

編集 これは私が試したものですが、うまくいきませんでした:

HTML

<input id="mob" name="mob" type="tel" placeholder="Enter your mobile number">
<a href="#" id="validate">Validate</a>

JS

var mobile_prefix = $('#mob').subsubstr(0,2);
$('#validate').click(function(){
if (mobile_prefix == 44||55||65||78) {
alert('correct');
}
else {
    alert('incorrect');
}
});

</p>

4

4 に答える 4

7

.match()にはあなたが探しているものがあると思います。いくつかの正規表現をブラッシュアップしてください。

if (StringFromSelectField.match(/^(44|55|65|78)/)) {
    //do something
}
于 2012-12-28T14:50:22.097 に答える
2

substringjavascriptから使用

var FirstTwoLetters = TextFromYourInput.substring(0,2);

次に、最初の2文字をパターンと比較できます。

于 2012-12-28T14:47:18.507 に答える
2

正規表現を使用するのがおそらく最も簡単です。

({phone number}).match(/^(44|55|65|78).*$/)
于 2012-12-28T14:53:27.100 に答える
0

したがって、入力フィールドの最初の変数;私のやり方で;)最初に、その入力が空ではなく、3つ以上の記号があるかどうかを確認します。最後に、form.submit() を許可するために最後に使用する変数です。必要に応じて、val() を取得する前に追加できます$.trim(postcode.val()) != ''

var postcode = $('#post_code');
        if(postcode.val() != '' && postcode.val().length > 2){
            var shortPostCode = postcode.val().substring(0,2);
            var validPostCode = /^(EH|KY)/;
            if(!shortPostCode.match(validPostCode)){
                postcode.after('<span class="error">Post code must start with EH</span>');
                dataValid = false;
            }
        }
于 2013-02-27T15:55:58.013 に答える