我對這個有點不解。我正在使用jQuery DataTables 1.10.6,並且我想讓它在用戶停止輸入時(比如可能在950毫秒之後?)執行搜索。我有種工作,但由於我使用服務器端處理,sSearch(搜索參數)返回null。取消綁定和重新綁定DataTables搜索事件結果爲空sSearch
我猜它與解除綁定和重新綁定有關,但我不知道如何讓sSearch正確發送。
var delay = function() {
var timer = 0;
return function (callback, ms) {
clearTimeout(timer);
timer = setTimeout(callback, ms);
}
})();
$("div.dataTables_filter input").unbind();
$("div.dataTables_filter input").bind("keyup", function() {
alert(this.value);
delay(function() {
$("#MyTable").dataTable().fnFilter(this.value);}, 1000);
}
根據我的理解,searchDelay只有在您想要調節而不是去抖時纔有用 - 這意味着searchDelay只會在每nms執行一次繪製,無論您提供哪個參數。我一直在尋找解決方案,在經過一段時間後延遲或限制平局的召喚(如在一段時間後沒有按鍵)。 –