私は自分のページに、デフォルトで米国の電話番号マスクを使用したいという1つの入力をしようとしています。エンドユーザーが国際電話番号を入力することを指定するチェックボックスをクリックした場合、マスクを削除します。
私は複数の方法を試しましたが、これまでのところ成功していません。現在のプロジェクトでは、jQueryを使用して完全に異なる入力を非表示/表示しています。しかし、私はそのオプションが好きではなく、より合理化されたアプローチを望んでいます。
私は以下を使用しています:
jQuery 1.4.1(まもなく1.4.2にアップグレードする予定)およびjQuery.MaskedInput-1.2.2
<script type="text/javascript">
$(document).ready(function($) {
if ($("#InternationalOfficePhone").attr('checked') == false) {
$("#OfficePhone").mask("(999) 999-9999? x99999");
}
});
$("#InternationalOfficePhone").click(function() {
if ($("#InternationalOfficePhone").attr('checked') == true) {
//$("#OfficePhone").mask(); //doesn't work
//$("#OfficePhone").unmask(); //doesn't work
$("#OfficePhone").unmask("(999) 999-9999? x99999"); //doesn't work
} else {
$("#OfficePhone").mask("(999) 999-9999? x99999");
}
});
</script>
上記のコードはデフォルトのマスクを設定するために正しく機能しますが、InternationalOfficePhoneのクリックイベントで何を試しても、マスクは削除されません。
どんな助けでも大歓迎です。