1

我正在使用jQuery Typewatch,但它不再维护,我遇到了问题。

我正在使用它来支持 ajax 搜索功能。如果用户输入搜索词,例如“bob”,它将按预期执行 ajax 回调。但是,如果用户或脚本清除包含搜索词的文本框,然后再次输入“bob”,则不会触发回调运行。

是否有解决此问题的方法,或者可能是 jQuery Typewatch 的替代插件或创建相同功能的方法(在用户完成输入后运行回调)?

这是基本的 TypeWatch JS。ajaxSearch 是一个标准的 jQuery$.ajax函数。

$("#search").typeWatch({
    callback: ajaxSearch,
    wait: 750,
    highlight: false,
    captureLength: 2
});
4

2 回答 2

1

啊,从 typewatch.js 中可以自我解释:

// Fire if text > options.minTextLength AND text != saved txt OR if override AND text > options.minTextLength
//if ((elTxt.length > options.minTextLength && elTxt.toUpperCase() != timer.text) 
if ((elTxt.length > options.minTextLength) 

我应该先看看那里。但至少它可能会帮助其他人。

于 2010-11-18T13:23:52.537 回答
0

它看起来像一个相当简单的插件。我快速浏览了代码,看起来也很简单。

// Fire if text > options.captureLength AND text != saved txt OR if override AND text > options.captureLength

这一行引起了我的注意,它在触发事件之前检查了最后一个值。您也可以使用简单的change触发器和一些自定义逻辑来实现这一点,或者您可以修改插件以满足您的需求。

于 2010-11-18T13:29:08.277 回答