1

これは、私が問題を抱えている気が遠くなるような質問です。テキストフィールドがあります。このテキスト フィールドは、4 つの形式の米国の携帯電話番号に対応する必要があります

  1. XXX-XXX-XXXX
  2. XXXXXXXXXX
  3. X-XXX-XXX-XXXX
  4. XXXXXXXXXXXX

最後の文字が入力されたら、問題のない ajax を介してチェックを行う必要があります。

入力、コピーと貼り付け、削除、およびそのフィールドに番号を入力するあらゆる方法で、テキストボックスに完全な携帯電話番号が含まれているかどうかを確認する必要があります。

$("#id").keyup で確認してみましたが、何かを貼り付けるとうまくいきません。

どのようにそこに到達したかに関係なく、そのフィールドに10文字または11文字があるかどうかを間隔または他の方法で確認する方法はありますか? [編集]

ここに私が見つけた解決策があります

var checkMsisdnInterval = window.setInterval( function () {
    var msisdn = getdigits($("#newSessionMsisdn").val());

    if(msisdn.length == 10 && !checked) {   
        doPreCheck(msisdn);
        checked = true;
    } else if(checked == true) {
        //do something here
    } else {
        //do something else 
    }
}, (1000 * 60 * 0.1));

$("#newSessionMsisdn").keyup(function(){
    checked = false;
});

function getdigits (s) {
   return s.replace (/[^\d]/g, "");
}

それは爆弾のように機能します。すべての返信に感謝します

4

2 に答える 2

0

ajax呼び出しでチェックしてみませんか?beforeSendメソッドを使用して、入力フィールドの長さをチェックしてください。

参考までに、http://api.jquery.com/jQuery.ajax/

于 2012-09-21T09:05:25.633 に答える
0

jQuery を使用して、変更イベントを見ましたか?

http://api.jquery.com/change/

于 2012-09-21T09:12:14.117 に答える