要解决"表格重绘时,过滤字段重置"的问题,你可以使用以下代码示例:
// 定义全局变量用于存储过滤字段的值
var filterValues = {};
// 监听表格重绘事件
table.on('draw', function () {
// 循环遍历所有的过滤字段
$('.filter-field').each(function () {
var filterField = $(this);
var fieldName = filterField.attr('name');
// 检查全局变量中是否存在该字段的值
if (filterValues.hasOwnProperty(fieldName)) {
// 设置过滤字段的值为全局变量中存储的值
filterField.val(filterValues[fieldName]);
} else {
// 清空过滤字段的值
filterField.val('');
}
});
});
// 监听过滤字段的变化事件
$('.filter-field').on('change', function () {
var filterField = $(this);
var fieldName = filterField.attr('name');
var filterValue = filterField.val();
// 将过滤字段的值存储到全局变量中
filterValues[fieldName] = filterValue;
// 执行表格重新绘制操作
table.draw();
});
在上述代码中,我们通过定义一个全局变量filterValues
来存储过滤字段的值。当表格重绘时,我们遍历所有的过滤字段,检查全局变量中是否存在该字段的值,如果存在,则将过滤字段的值设置为全局变量中存储的值;如果不存在,则清空过滤字段的值。当过滤字段的值发生变化时,我们将其存储到全局变量中,并执行表格的重新绘制操作。这样就可以解决"表格重绘时,过滤字段重置"的问题。
上一篇:表格中HTML缩进问题