【发布时间】:2017-02-13 12:34:55
【问题描述】:
我使用 jQuery DataTable,并且在 jQuery DataTable 上有一些工具,即过滤器、复选框等,并且在调用每个 table.ajax.reload() 之后,所有这些工具都会在AJAX 请求,这导致无法保留复选框值。那么,有什么办法可以防止 DataTable 的工具栏在每次重新加载时都被重绘呢?另一方面,重新加载后保留复选框值的最佳方法是什么(即使用隐藏值或 cookie)?
<input type="hidden" id="key" name="Key" />
$(document).ready(function () {
//code omitted for brevity
"fnServerData": function (sSource, aoData, fnCallback) {
aoData.push({ "name": "all", "value": $('#key').val() });
$.getJSON(sSource, aoData, function (json) {
fnCallback(json);
$("div.toolbar").html('<input type="checkbox" name="GetAll"
id="isGetAll" value="$('#key').val()"/> Get all records');
});
},
//...
$(document).on('change', '#isGetAll', function () {
if ($("#key").val()) {
$("#key").val('TRUE');
} else {
$("#key").val('FALSE');
}
table.ajax.reload();
});
});
【问题讨论】:
-
@JulianoNunesSilvaOliveira 关于这个问题有什么想法吗?
标签: javascript jquery asp.net-mvc datatable datatables