每当time / datepicker触发更改事件时,每当输入框被聚焦时,即使不更改内容也是如此。怎么避免这个?

时间:2014-05-27 21:22:37

标签: jquery datepicker timepicker anytime

正如标题中所述,每当我将输入文本框与随时附加的datepicker / timepicker重点关注时,我都会收到更改事件。有没有办法避免这种行为?因为我实际上只是希望得到一个改变事件,当我真正改变一些事情时。

我在firefox和chrome上看到了这种行为。没试过IE

2 个答案:

答案 0 :(得分:2)

如果它真的这样做,那么在某处记住之前的值就足够简单了,只有在值不匹配时才调用“真正的”更改函数。

$("relevant-selector").on("change", function() {
    var $this = $(this),
        val   = $this.val(),
        prev  = $this.data("prevValue");
    if (val !== prev) {
        handleChange();
        $this.data("prevValue", val);
    }
});

您可能还会向插件开发人员报告错误。或者,如果它是开源的,请报告,修复它,并向它们发送拉取请求。

答案 1 :(得分:2)

@Toksan,我修改了库,只在输入字段的值实际发生变化时才触发change()事件。请从ama3.com/anytime下载5.0.2版本,请通过我的联系页面给我发消息,告诉我它是如何工作的。

如果您有关于图书馆的未来问题,问题或建议,请通过我的联系页面向我发送消息,以便更快地解决问题。