我试图在我的页面上输入一个默认情况下我希望有一个美国电话号码掩码的输入。如果最终用户单击指定他们想输入国际电话号码的复选框,我希望删除掩码。
我尝试了多种方法,到目前为止都没有成功。在当前项目中,我使用 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 的点击事件上尝试什么,它都不会删除掩码。
任何帮助深表感谢。