基于这个讨论,在我的 JS 代码中添加了下面的代码,以便通过按 enter 键而不是 keyup 或延迟来触发过滤。
jQuery.fn.dataTableExt.oApi.fnSetFilteringPressEnter = function (oSettings) {
var _that = this;
this.each(function (i) {
$.fn.dataTableExt.iApiIndex = i;
var $this = this;
var anControl = $('input', _that.fnSettings().aanFeatures.f);
anControl.unbind('keyup').bind('keypress', function (e) {
if (e.which == 13) {
$.fn.dataTableExt.iApiIndex = i;
_that.fnFilter(anControl.val());
}
});
return this;
});
return this;
}
/* Example call */
$(document).ready(function() {
$('.dataTable').dataTable().fnSetFilteringPressEnter();
} );
现在我想做的是,当用户从搜索栏中删除关键字时,我想重绘表格。目前它不会在不按 Enter 按钮的情况下重绘。我怎样才能达到这个结果?