【发布时间】:2016-11-25 13:03:19
【问题描述】:
这是我第一次在新世界中使用 ajax,哈哈。我已经很久没有看到它了,它已经改变了。
我遇到的问题是数据都在一个 div 中结束,而不是在三个 div 中跨越页面。如果我手动加载 div,结果很好,但是当我切换到 ajax 时,它全部在一个 div 中,并且数据也用逗号分隔。我认为这可能与我处理数组的方式有关。但我没有以这种方式处理数组的 ajax 经验。
逗号分隔的数据都在第一个 div 中结束,我也不需要逗号。
这是数组(我在第一个 div 中组合的前两个元素 - 名称图像)
Array
(
[0] => Array
(
[0] => testprofile
[1] => http://www.example.com/dirname/dirname/dirname/images/no-avatar.png
[2] => adad
[3] => 02:32:08
)
)
这里是 html div
<td align="center" width="20%"><div id="userdata"></div></td>
<td width="70%"><div id="mesdata"></div></td>
<td align="center" width="10%"><div id="timedata"></div></td>
这里是ajax
function ajaxGetMessages(roomid, urlwithr)
{
$.ajax({
cache: false,
dataType: 'json',
method: 'GET',
url: urlwithr,
data: {
roomid: roomid,
urlrnd: urlwithr,
ajax: true
},
success: function(data) {
data.forEach(function(entry) {
var alphaname = data[0];
var avatar = data[1];
var displayuser = alphaname+' <img src="'+avatar+'" alt="avatar" height="30" width="30" />';
document.getElementById("userdata").innerHTML = displayuser;
document.getElementById("mesdata").innerHTML = data[2];
document.getElementById("timedata").innerHTML = data[3];
});//close forEach
}//close success
}); //close ajax
}//close function
【问题讨论】:
-
我想你想要的是
entry[0]、entry[1]等,而不是data[0]。