Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Jquery数据表优化多个HTML行的插入_Javascript_Jquery_Datatables - Fatal编程技术网

Javascript Jquery数据表优化多个HTML行的插入

Javascript Jquery数据表优化多个HTML行的插入,javascript,jquery,datatables,Javascript,Jquery,Datatables,有没有更好的方法将HTML表行数组插入到现有的datatable实例中 我现在是这样做的: var rows = ['<tr><td>row 1</td></tr>','<tr><td>row 2</td></tr>','<tr><td>row 3</td></tr>' ...]; $.each(rows,function(i,row){ if(row

有没有更好的方法将HTML表行数组插入到现有的datatable实例中

我现在是这样做的:

var rows = ['<tr><td>row 1</td></tr>','<tr><td>row 2</td></tr>','<tr><td>row 3</td></tr>' ...];
$.each(rows,function(i,row){
 if(row){
  oTable.row.add($(row)).draw();
 }
});
var rows=[“第1行”、“第2行”、“第3行”…];
$.each(行,函数(i,行){
国际单项体育联合会(世界其他地区){
oTable.row.add($(row)).draw();
}
});
它工作得很好,但处理100多行时速度非常慢,渲染1000行需要一分钟


有什么建议吗?谢谢你

别介意我找到了一种优化它的方法,我会把答案留在这里,让其他人来寻找同样的答案

而不是:

var rows = ['<tr><td>row 1</td></tr>','<tr><td>row 2</td></tr>','<tr><td>row 3</td></tr>' ...];
$.each(rows,function(i,row){
 if(row){
  oTable.row.add($(row)).draw();
 }
});
var rows=[“第1行”、“第2行”、“第3行”…];
$.each(行,函数(i,行){
国际单项体育联合会(世界其他地区){
oTable.row.add($(row)).draw();
}
});
我这样做:

var rows = ['<tr><td>row 1</td></tr>','<tr><td>row 2</td></tr>','<tr><td>row 3</td></tr>' ...];
$.each(rows,function(i,row){
 if(row){
  oTable.row.add($(row));
 }
});
oTable.draw();
var rows=[“第1行”、“第2行”、“第3行”…];
$.each(行,函数(i,行){
国际单项体育联合会(世界其他地区){
添加($(行));
}
});
rotable.draw();

换句话说,我没有在每行插入上重新绘制表,而是先添加所有行,然后在循环结束时刷新表。

您应该使用vuejs、reactjs等现代框架。jquery非常古老。。。我建议vuejs这样的东西更容易维护