0

jqueryのマスクされた入力プラグインを使用しています。

フィールドに次のマスクがあります。

 "?999-999-9999 x9999"

なぜ?始めたのですか?ユーザーが不完全な番号を入力した場合、フィールドをクリアしたくないので、すべてをオプションにしました。これで、ユーザーが番号を入力しているときにx、電話に内線番号があるかどうかを常に確認できます。x拡張子が与えられていない場合、どうすればそれを取り除くことができますか?

繰り返しますが、私が使用する場合、私はフィールドをクリアしたくありません

  "999-999-9999? x9999" 

はい、動作しますが、内線番号がある場合にのみxを追加しますが、不完全な電話が入力された場合は、目標ではないフィールドが空になります。

どんな助けでも大歓迎です。

4

1 に答える 1

0

たくさん試した後、目標を達成するために自分で修正しました。

目標は、不完全な入力が与えられた場合にテキストが消えないようにし、拡張子が与えられなかった場合に x を取り除くことでした。

コードの最後にこのテストを追加しました。

var splitString = $("[name=myinput]").val().split("x");
//if splitString array length is more than 1 means splitString[1] is set
//if splitString[1].length is 0 means its only x by itself so get rid of it
if (splitString.length > 1 && splitString[1].length == 0) {
    $("[name=myinput]").val($("[name=myinput]").val().replace("x", ""));
}

例:

 entered text: 718-111-123 x -> turns into -> 718-111-123
 entered text: 718-111     x -> turns into -> 718-111
 entered text: 718-111-123 x555 -> turns into -> 718-111-123 x555
于 2012-12-03T16:20:57.987 に答える