我正在寻找一种JavaScript数组插入方法,其格式为:
arr.insert(index, item)
Run Code Online (Sandbox Code Playgroud)
最好是在jQuery中,但任何JavaScript实现都会在这一点上完成.
有没有比这更好的方法将数组拼接到javascript中的另一个数组中
var string = 'theArray.splice('+start+', '+number+',"'+newItemsArray.join('","')+'");';
eval(string);
Run Code Online (Sandbox Code Playgroud)
我创建的DEFAULTajax datatable,有时在表的末尾由json填充哪些行:jsfiddle,有时在表的顶部.这取决于ajax响应的时间.
推荐输出
我有两个来自两个不同来源的输入jsons,输出是这个表:
<table>
<tr><td>1</td><td>2</td><td>3</td></tr>
<tr><td>1</td><td>2</td><td>3</td></tr>
<tr><td>1</td><td>2</td><td>3</td></tr>
...
<tr><td>1</td><td>2</td><td>3</td></tr>
<tr><td>1</td><td>2</td><td>3</td></tr>
<tr><td>8</td><td>7</td><td>6</td></tr> <!-- inserted row-->
<tr><td>8</td><td>7</td><td>6</td></tr> <!-- inserted row-->
<tr><td>8</td><td>7</td><td>6</td></tr> <!-- inserted row-->
<tr><td>8</td><td>7</td><td>6</td></tr> <!-- inserted row-->
<tr><td>1</td><td>2</td><td>3</td></tr>
<tr><td>1</td><td>2</td><td>3</td></tr>
...
<tr><td>1</td><td>2</td><td>3</td></tr>
</table>
Run Code Online (Sandbox Code Playgroud)
来自2. json的行插入表(从1.json创建)到特定位置.这个位置是常数,长度为1和2. json数据是常数.
第一个解决方案
我必须添加包含数字的第一列,并按顺序对数据表进行排序 - jsfiddle.我可以隐藏第一列jsfiddle,但我更喜欢使用自定义函数,因为它在IE8中不起作用.
var t = $("#tab1").DataTable({
"ajax": "data1.json",
columnDefs: [
{ className: "hide", "targets": [ 0 ] },
],
"columns": [
{ "data": "id"},
{ "data": "cat1"},
{ "data": "cat2"},
{ "data": "cat3"} …Run Code Online (Sandbox Code Playgroud)