无法在引导表中再次添加数据

Unable to add data again in Bootstrap table

本文关键字:添加 数据      更新时间:2023-09-26

我试图在加载时从数据库中获取数据,但当我想在同一个表中再次插入数据时,点击按钮,我不知道如何插入

这是我的HTML代码

<table id="example" class="display" onload="callData()"></table>
<button type="button" id="idTestTraffic" class="btn btn-primary">Get Test Traffic</button>

我的JavaScript代码

function setValue(data) {
    var dataSet = [];
    if (data.response.Status == 1) {
        for (i = 0; i < data.response.Result.length; i++) {
            dataSet.push([])
        }
        for (i = 0; i < data.response.Result.length; i++) {
            dataSet[i].push(i + 1);
            dataSet[i].push(data.response.Result[i].testName);
            dataSet[i].push(data.response.Result[i].view);
            dataSet[i].push(data.response.Result[i].start);
            dataSet[i].push(data.response.Result[i].finish);
        }
    } else
        showMessage("green", data.response.Description, "");
    if (dataSet[0].length == 5)
        return dataSet;
}
function callData() {
    debugger;
    $('#example').DataTable({
        data: dataIsSet(),
        columns: [{
            title: "Sr No."
        }, {
            title: "Test Name"
        }, {
            title: "View"
        }, {
            title: "Start"
        }, {
            title: "Finish"
        }],
    });
}
function dataIsSet() {
    var dataSet = [];
    syncAjaxCall("POST", "trafficanalysis/viewfinishanalysis", "", "application/json")
        .done(
            function(data) {
                dataSet = setValue(data);
            });
    return dataSet;
}

点击按钮,我的代码是

$("#idTestTraffic").click(function() {
    syncAjaxCall("POST", "trafficanalysis/viewfinishanalysis", "", "application/json")
        .done(function(data) {
            // I want to set data in same table, but no clue how to set data in same table
            dataSet = setValue(data);
        });
});

选项1:

您可以使用表的内容创建一个变量/字符串,并将其附加到example id。

选项2:

使用document.createElement()创建元素以创建每个元素,然后将每个元素附加到表行中,最后附加到表example本身。

所以我会做什么:

function setValue(data) {
    var html = "";
    if (data.response.Status == 1) {
        for (i = 0; i < data.response.Result.length; i++) {
            html += '<tr>';
            html += '<td>' + (i + 1) + '</td>';
            html += '<td>' + data.response.Result[i].testName + '</td>';
            html += '<td>' + data.response.Result[i].view + '</td>';
            html += '<td>' + data.response.Result[i].start + '</td>';
            html += '<td>' + data.response.Result[i].finish + '</td>';
            html += '</tr>';
        }
    }
    return html;
}

然后在你有dataSet = setValue(data);的地方,就这样做:

$('#example').append(setValue(data));