提交多行jquery数据表

时间:2018-04-12 16:34:01

标签: javascript jquery datatables

我尝试做类似于这个答案的事情:How to add multiple rows to a jQuery DataTable from a html string

唯一的区别是: 我需要添加多个值,我将从文本区域获取。第一部分完美无缺。

function Gen(){
var data = require('../../cases/config.json');
var tableHeaders;
var cantidad = 0;

$.each(data.Ge[0].Data, function(i, val){
    cantidad += 1
    tableHeaders += "<th>" + val + "</th>";
});
// Header 
$("#tabGen").empty();
$("#tabGen").append('<thead><tr>' + tableHeaders + '</tr></thead>');

var t = $('#tabGen').DataTable({
    "scrollY": 200,
    "scrollX": true,
    rowReorder: true,
    autoFill: true,
    select:true,
    stateSave: true
});

执行 t.row.add($(info))时的第二部分.draw(); 它不会出现我需要显示的所有数据。所以当我看到另一个答案时,我看到我可以从一个html字符串中添加一行。所以我不知道如何在表格中添加多个值。

 $('#excel').on( 'click', function () {
    var inf = $('textarea[name=excel_data]').val();
    var rows = inf.split("\n");

    for(var y = 0; y < rows.length; y++) {
    var cells = rows[y].split("\t");

        for(var x in cells) {
            var info = '<td><input type="text" id="inputTextAg'+x+'" name="inputTextAg'+x+'" value="'+cells[x]+'" draggable="true" "></td>'
            t.rows.add($(info)).draw();
        }
    }
 });
}

谢谢!

1 个答案:

答案 0 :(得分:1)

试试这个:

$('#excel').on( 'click', function () {
    var inf = $('textarea[name=excel_data]').val();
    var rows = inf.split("\n");

    for(var y = 0; y < rows.length; y++) {
        var cells = rows[y].split("\t");

        var info = '<tr>';
        for(var x in cells) {
            info += '<td><input type="text" id="inputTextAg'+x+'" name="inputTextAg'+x+'" value="'+cells[x]+'" draggable="true" "></td>';
        }
        info += '</tr>';
        t.rows.add($(info)).draw();
    }
  });
}