0

我有一个包含很多行的数据表。我需要在数据表中添加一个新行(只是客户端,我想使用 ajax 在 mysql 中插入该新行)。我想在列中添加的大多数数据都是选择列表(从 mysql 检索)。我当前的添加行函数如下所示:

function fnAddRow() {       
var addData = {
    "sno": "<span id='txt'><img src='images/green_check.png' onClick='saveRow(this)';/><img src='images/red_cross.png' onClick='cancelEdit(this)';/></span>",       
    "project": "",
    "year": "<select name='year' id='year' ><option value='2012'>2012</option><option value='2013'>2013</option></select>",
};
oTable.fnAddData(addData); }

“项目”的数据应该来自 mysql 表。我该如何添加?请帮忙!!提前致谢。

4

1 回答 1

1

尝试使用 ajax 来获取您的项目数据:

HTML:

<input id="AddButton" type="button" />
<table id="dataTable">
    ...
</table>

JavaScript:

function fnGetProjectFromMySQL() {
    var projectHTML;
    $.ajax({
        url: "code/getMySQLData.php",
        success: function (mySqlData) {
            //Build your project html here using mySQLData
            projectHTML = "";
        }
    });
    return projectHTML;
}

function fnAddRow(oTable) {       
    var addData = {
        "sno": "<span id='txt'><img src='images/green_check.png' onClick='saveRow(this)';/><img src='images/red_cross.png' onClick='cancelEdit(this)';/></span>",       
        "project": fnGetProjectFromMySQL(),
        "year": "<select name='year' id='year' ><option value='2012'>2012</option><option value='2013'>2013</option></select>"
    };
    oTable.fnAddData(addData); 
}

$(document).ready(function () {
    var oTable = $("#dataTable").dataTable();

    $("#AddButton").click(function () {
        fnAddRow(oTable);
    });
});

我想有几种不同的方法可以完成这项工作。关于 stackoverflow 的 Google 和 javascript 问题应该可以找到您需要的内容: DataTables - How to add a row

于 2012-09-11T08:50:49.713 回答