【发布时间】:2017-06-10 20:19:39
【问题描述】:
我有一个构建动态表的函数。我无法弄清楚如何将每列设置为数据库中的不同数据集。现在它只是在每一列中显示相同的值。
一点背景。我正在构建一个有 6 列和很多行的表(这一切都取决于数据库有多少数据)。现在它只显示所有 6 列中的一列,所以它们重复。
如何将每列设置为 6 列的不同值?
function addTable() {
var len = errorTableData.length;
var myTableDiv = document.getElementById("myDynamicTable");
var table = document.createElement('TABLE');
table.border='1';
table.id = "dataTable";
var tableBody = document.createElement('TBODY');
table.appendChild(tableBody);
for (var i=0; i<len; i++){
var tr = document.createElement('TR');
tr.className = "rowEditData";
tableBody.appendChild(tr);
for (var j=0; j<6; j++){
var countyName = errorTableData['CountyName'][i];
var stateName = errorTableData['StateName'][i];
var td = document.createElement('TD');
td.className = "mdl-data-table__cell--non-numeric";
td.appendChild(document.createTextNode(countyName));
td.appendChild(document.createTextNode(stateName));
tr.appendChild(td);
}
}
myTableDiv.appendChild(table);
}
这里是ajax调用:
function triggerDataTable(index) {
// Make AJAX requests for model systems
$.ajax({
type: "POST",
url: "qry/getAllData.php",
async: true,
dataType: "html",
data: {ErrorOptions: control.settings.errorOptions},
success: function (result) {
//console.warn(result);
errorData = JSON.parse(result);
//loop through data
var len = errorData.length;
for(i=0; i<len; i++) {
if ('VersionKey' in errorData[i]) {
vKey = (errorData[i]['VersionKey']);
} else if ('ErrorCode' in errorData[i]) {
var errorCode = (errorData[i]['ErrorCode']);
} else if ('SourceKey' in errorData[i]) {
var sourceKey = (errorData[i]['SourceKey']);
} else { //data here
errorTableData = errorData[i];
}
}
addTable();
}
});
}
errorData 是来自数据库的数据。如您所见,我尝试添加 2 个变量,但是当我这样做时,它只是将它们放在同一个框中并在整个表中重复。
【问题讨论】:
-
您是否手动运行 AJAX 调用以查看它返回的数据?如果是这样,请将其添加到问题中。并删除 [mysql] 标签,除非它确实相关。
标签: javascript html mysql