Javascript 在html中显示AJAX响应
我试图在contactTable中添加表中json响应中每个ContactID和ContactName的新行。我正在控制台中接收数据,但当我尝试将该数据插入html文档时,每个数据都会得到一个Javascript 在html中显示AJAX响应,javascript,jquery,ajax,get,Javascript,Jquery,Ajax,Get,我试图在contactTable中添加表中json响应中每个ContactID和ContactName的新行。我正在控制台中接收数据,但当我尝试将该数据插入html文档时,每个数据都会得到一个未定义的值 html结果 <tr> <th id="contactName"></th> <th id="contactID"></th> </tr> <tr> <td>undefined<
未定义的值
html结果
<tr>
<th id="contactName"></th>
<th id="contactID"></th>
</tr>
<tr>
<td>undefined</td>
<td>undefined</td>
</tr>
您的数据如下所示:
var data = {
TagMembers: [
{ContactID:2732270,
ContactName:"First",
RecAdd:"/Date(1427853954000-0700)/",
RecAddUser:0,
RecID:3,
TagGroupID:4
},
{ContactID:2732275,
ContactName:"Second",
RecAdd:"/Date(1427853954000-0700)/",
RecAddUser:0,
RecID:4,
TagGroupID:5
},
{ContactID:2732277,
ContactName:"Third",
RecAdd:"/Date(1427853954000-0700)/",
RecAddUser:0,
RecID:5,
TagGroupID:5
}]
};
这意味着您应该发送到drowTable
函数,而不是data
,也不是JSON.stringify(data)
(无需将对象转换为字符串),而是data.TagMembers的数组:drawTable(data.TagMembers)代码>这样您就可以循环对象并从每个对象获取数据。
也不需要额外调用drawRow(JSON.stringify(data))代码>它是多余的,因为您已经在drowTable
函数中调用了它,结果我需要对绘图行进行一些更改
function drawRow(data) {
var row = $("<tr />")
$("#contactTable").append(row);
row.append($("<td>" + data.ContactName + "</td>"));
row.append($("<td>" + data.ContactID + "</td>"));
}
函数绘图行(数据){
变量行=$(“”)
$(“#contactTable”).append(行);
行。追加($(“”+data.ContactName+“”));
行。追加($(“”+data.ContactID+“”));
}
为什么要将其严格化?不应该是例如:drawTable(数据)代码>?!您不应该使用JSON.stringify(data)
,但是data
,据我所见,您的draw函数需要一个对象,使用stringify,您可以将其返回到JSON字符串,而jQuery已经将JSON解析为一个可随时使用的对象。是的,不应该有JSON.stringify。我还认为drawTable的第1行应该用于(var i=0;iObject
TagMembers:Array(185)
[0 … 99]
0:
ContactID:2732270
ContactName:"First Last"
RecAdd:"/Date(1427853954000-0700)/"
RecAddUser:0
RecID:3
TagGroupID:1
var data = {
TagMembers: [
{ContactID:2732270,
ContactName:"First",
RecAdd:"/Date(1427853954000-0700)/",
RecAddUser:0,
RecID:3,
TagGroupID:4
},
{ContactID:2732275,
ContactName:"Second",
RecAdd:"/Date(1427853954000-0700)/",
RecAddUser:0,
RecID:4,
TagGroupID:5
},
{ContactID:2732277,
ContactName:"Third",
RecAdd:"/Date(1427853954000-0700)/",
RecAddUser:0,
RecID:5,
TagGroupID:5
}]
};
function drawRow(data) {
var row = $("<tr />")
$("#contactTable").append(row);
row.append($("<td>" + data.ContactName + "</td>"));
row.append($("<td>" + data.ContactID + "</td>"));
}