我目前正在我的一个项目中使用jQuery数据表。我坚持的是能够动态添加新行,同时按字母顺序添加行。
我知道我需要使用API中的fnadddata来添加一行,但是这个函数只将新行添加到表的末尾。它不按字母顺序添加。因此,我自己编写代码来找到手动添加行的位置。
$(".rowList").each(function( ) {
if( $(this).text( ).toLowerCase( ) > eObj.response.name.toLowerCase( ) ) {
$(this).closest("tr").before( eObj.response.html ); // html is the new row from server
return false;
}
}
上面的代码找到按字母顺序排列的位置,并相应地在表格中创建一个新行。但是当然,由于我没有使用数据表fnaddData函数,一旦添加了行,当我点击表格上的某些事件时(例如:排序,搜索,过滤),新行就消失了。
我理解这是因为数据表的DOM和缓存问题。那么我有办法解决这个问题吗?
答案 0 :(得分:0)
你不能只使用fnadddata在最后插入它,然后根据列的字母值对行进行排序吗?
答案 1 :(得分:0)
fnAddData肯定会在表运行后对表进行排序 - 例如:http://live.datatables.net/aceyed/edit#javascript,html。请链接到显示问题的测试用例。