我从$ .ajax调用中获取数据,但无法正确处理其数据。这是我的代码。
function OnSuccessResultSet(data, status) {
var output;
for (var i in data.recordset) {
output += "<li><a href='#'>";
for (var j = 0; j < metaName.length; j++) {
var testVar = metaName[j];
output += " <h2>" + data.recordset[i].testVar+ "</h2>";
alert(data.recordset[i].testVar);
alert(testVar);
alert(data.recordset[i].LABEL);
};
output += "</a></li>";
}
$(output).appendTo("#content1");
$('#content1').listview('refresh');
}
第一个警报给了我一个未定义的背面。第二个警报给我LABEL回来,第三个给我LABEL的价值。我的metaName包含记录集中元素的所有属性值。我还使用$ .ajax调用填充了我的metaName数组。 我没有发现我的错误。 :/
答案 0 :(得分:4)
我认为您需要使用bracket notation代替dot notation作为member operator,因为您要查找的密钥存储在变量testVar
alert(data.recordset[i][testVar]);
实施例
function OnSuccessResultSet(data, status) {
var output, testVar;
for (var i in data.recordset) {
output += "<li><a href='#'>";
for (var j = 0; j < metaName.length; j++) {
testVar = metaName[j];
output += " <h2>" + data.recordset[i][testVar]+ "</h2>";
};
output += "</a></li>";
}
$(output).appendTo("#content1");
$('#content1').listview('refresh');
}