1

私は他の正規表現の電話フォーマットをチェックしましたが、私のものは少し違います。ユーザーがキーアップ関数 (jQuery) を使用して番号を入力しているときに、電話番号をフォーマットするコードを書き留めました。非常に基本的な正規表現パターンをいくつか使用しましたが、すべてのフォーマットは正規表現で行うことができると思います。

  • 電話の形式は次のようになります(312) 317 72 84

  • 文字の総数は 15 です

  • ユーザーがコードを入力すると、コードに「(」と「」が追加されます

  • 電話番号の先頭に使用しないでください0

現在の問題: " " 空白をコードに追加するため、ユーザーがバックスペースを押すと空白が削除され、新しい空白が追加されます。Backspace キーアップは個別に処理する必要があります

私の現在のコードはここにあります: http://jsfiddle.net/kWd4k/

4

2 に答える 2

1

コードを次の条件でラップします。

if(e.keyCode!=8){ //since you're using jQuery, you can use e.which instead
...
}

http://jsfiddle.net/sNYCv/

于 2012-11-19T06:23:54.367 に答える
0

keyup イベントを処理する関数にイベント オブジェクトを渡し、次を使用してバックスペースをチェックします。e.which

$("input.phone").keyup(function(e) { 
    if(e.which!=8){
    ....
    }
});
于 2012-11-19T06:36:10.097 に答える