使用jQuery,当以编程方式生成表格单元格时,如何使用AJAX调用填充表格单元格的值?
我正在构建一个如下工作的页面:
jQuery.each
迭代数组*
) - 我该如何实现这个功能? 示例表结构:
Name Location1 Location2
================================
Item1 * *
Item2 * *
其他考虑因素:
注意:我正在使用以下代码添加表行,我将对此进行更改。 Reference
$("#tableID").find("tbody").append($('<tr>')
.append($('<td>').text(...))
.append($('<td>').text(...))
.append($('<td>').text(...))
);
我想我可能会为每个单元格生成ID,然后根据它启动AJAX调用,但这看起来有点笨重。还有更优雅的方法吗?
理想情况下,也可以调整任何解决方案以处理向表中添加额外列的用例,例如:上面样本表中的Location3。
答案 0 :(得分:0)
var nEditing = null;
$('#query_for_search_result_table_new').click(function (e) {
e.preventDefault();
var aiNew = oTable.fnAddData(['', '', '', '<a class="edit" href="">Edit</a>', '<a class="cancel" data-mode="new" href="">Cancel</a>', '']);
var nRow = oTable.fnGetNodes(aiNew[0]);
editRow(oTable, nRow);
nEditing = nRow;
});
function editRow(oTable, nRow) {
var aData = oTable.fnGetData(nRow);
var jqTds = $('>td', nRow);
jqTds[0].innerHTML = $("#dvFieldLabel").html();
jqTds[1].innerHTML = $("#dvFieldOperator").html();
jqTds[2].innerHTML = '<input type="text" class="m-wrap small" value="' + aData[2] + '">';
jqTds[3].innerHTML = '<a class="edit" href="">Save</a> <a data-mode="new" class="cancel" href="">Cancel</a>';
jqTds[4].innerHTML = '<label>' + aData[0] + ' ' + aData[1] + ' ' + aData[2] + '</label>';
}