如何在动态表更新后刷新整个表排序缓存
How can I refresh the entire table sorting cache after dynamic table update?
我正在使用JoeQuery的Stupid TablejQuery插件对一个简单的表进行排序。我不知道如何刷新动态表上的整个排序缓存。
updateSortVal
函数允许更新单个小区。例如:
$age_td.updateSortVal(23);
但是,当整个thead
和tbody
被替换时,我如何刷新整个表?
这是我的代码:
$.ajax({
...
success: function(data) {
$("#myTable thead, #myTable tbody").empty();
if (data.data.length > 0) {
var $thead_tr;
var $tbody_tr;
for (var r = 0; r < data.data.length; r++) {
if (r == 0) $thead_tr = $("<tr>").appendTo("#myTable thead");
$tbody_tr = $("<tr>").appendTo("#myTable tbody");
for (var c in data.data[r]) {
if (r == 0) $("<th>").html(c).appendTo($thead_tr);
$("<td>").html(data.data[r][c]).appendTo($tbody_tr);
// I've tried adding `.updateSortVal(data.data[r][c]);`
// to the above as well, but the cache for the `th`
// needs to be re-cached as well, so let's do it all at once
}
}
// I'd like to refresh the entire stupidtable cache here
$("#myTable").stupidtable().show();
}
}
}
});
也许你应该基本上删除你的表,而不是清空它,然后重新创建它以重置合适的(例如width replaceWith())
$("#myTable").replaceWith('<table id="myTable"><thead></thead><tbody></tbody></table>');
而不是
$("#myTable thead, #myTable tbody").empty();
编辑
由于我不确定你所说的缓存是什么,所以我做了这个小提琴。如果你重复你的问题,你能检查一下并向我解释吗?
Fiddle演示
相关文章:
- JavaScript数组排序(函数)用于对表行进行排序,而不是排序
- 使用promise和mongoose对文档进行排序
- Selectize.js:如何对整数值的选项进行排序
- Javascript排序的图像弹出窗口..可以't单独弹出
- 如何通过引用var Using DataTables来进行分页或排序
- 如何在从浏览缓存加载页面时执行javascript
- 为什么HTML5拖放的目标是孩子?(可排序列表)
- AngularJs对所有页面中的所有记录进行排序
- ReactJS和SpringDataRest缓存问题可能与websocket有关
- 缓存谷歌地图数据
- 当属性不一致时,如何根据属性对JS对象列表进行排序
- 按从高到低对多个int变量进行排序
- jQuery UI可排序-多连接列表拖动
- Javascript排序字符串或数字
- 2个backbone.js集合,具有相同的模型,但排序顺序不同
- sort而不是排序javascript
- 防止jQuery Mobile中的ajax缓存
- 通过从节点父级获取所有子级对节点进行排序(获取子级数组)
- 如何合并不同集合的游标并按日期排序
- 如何在动态表更新后刷新整个表排序缓存