使用datepicker的jQuery蒙版输入即使未更改也会触发onChange事件

时间:2013-01-29 12:21:38

标签: jquery datepicker mask

我有一个输入(id =“myDate”),一个日期记事本和附加的面具

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

__/__/____

显示是因为:

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

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

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

__/__/____

通过jQuery掩码添加和删除?

1 个答案:

答案 0 :(得分:1)

只需更新到最新的jQuery(1.9.0)和最新的maskedInput(1.3.1) 这是一个已经解决的错误 - 请查看change log

Example 1.2.1不起作用。
Example与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 /和蒙版插件 希望这会有所帮助。