0

我有一个输入( id="myDate" )、一个 datepicher 和附加到它的掩码

当用户按 Tab 键循环遍历所有控件,并到达输入“myDate”时,

__/__/____

显示是因为:

$("#myDate").mask("99/99/9999");

问题是当用户按下 Tab 离开控件而不写任何东西时,会触发 onChange 事件,这只有在用户修改控件值时才会发生!

如何检测真正的变化,并忽略

__/__/____

由 jQuery 掩码添加和删除?

4

1 回答 1

1

只需更新到最新的 jQuery (1.9.0) 和最新的 maskedInput (1.3.1)。
这是一个已解决的错误 - 查看更改日志

1.2.1 的示例不起作用。
以 1.3.1为例

代码(因为 SO 说我必须):
HTML:

First field: <input type="text" id="bla1" name="bla"><br>
Date field: <input type="text" id="datef" name="datef"><br>
Last name: <input type="text" name="lname"><br>

JS:

$("#datef").mask("99/99/9999");
$("#datef").datepicker();
$("#datef").on('change', function(){ alert('ha');});

不要忘记添加 jQuery/jQuery-UI/ 和蒙面插件。
希望这可以帮助。

于 2013-01-29T14:34:07.277 回答