我目前在我的一个项目中使用jQuery数据表。我所坚持的是能够动态地添加新行,同时按字母顺序添加行。
我知道我需要使用fnadddata从API添加一行,但这个函数只添加新行到表的末尾。它不按字母顺序添加。因此,我编写了自己的代码来查找手动添加行的位置。
$(".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和缓存问题。有什么办法能让我处理好这件事吗?
您不能使用fnadddata在末尾插入它,然后根据列的字母顺序值对行进行排序吗?
fnAddData在运行后肯定会对表进行排序-示例:http://live.datatables.net/aceyed/edit#javascript,html。请链接到显示该问题的测试用例。