由于环境原因,我想将此限制为小而简洁而不是插件,除非它是一个可以放在其他jquery代码旁边的扩展.
我有这个代码:
$("#txtSearch").live('keyup', function () {
LoadList(1)
});
Run Code Online (Sandbox Code Playgroud)
我想添加一个延迟,如果用户必须在执行调用前0.5秒等待(如停止输入).
所以基本上如果在连续击键之间输入的字母少于X时间,则不会发生ajax调用.
使用Jquery有一个简洁的方法吗?
Nik*_*las 22
在应用新的击键之前设置超时并在每次击键时清除它:
var timeout;
$("body").on('keyup', '#txtSearch', function () {
window.clearTimeout(timeout);
timeout = window.setTimeout(function(){
LoadList(1);
},500);
});
Run Code Online (Sandbox Code Playgroud)
示例:http://jsfiddle.net/niklasvh/KgRjJ/
gen*_*sis 10
$("#txtSearch").live('keyup', function () {
var value=$("#txtSearch").val();
setTimeout(function(){
if ($("#txtSearch").val() == value)
{
LoadList(1)
}
},500);
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7441 次 |
| 最近记录: |