【发布时间】:2012-11-23 14:30:58
【问题描述】:
我有这个 AJAX 函数,用于使用 Java servlet 中的用户名检索 XML。我在这里解析用户名并将它们发送到addToUserList 函数,我在其中附加了jQuery。但是[Object HTMLInputElement] 是唯一附加到列表的东西。当我在浏览器控制台上运行 AJAX 函数时,返回的 XML 的第一个元素是 [object HTMLInputElement],但后面有用户名。
function displayFriendList(){
$.ajax({
url : '/getFriendList?userid=' +userid,
type : "POST",
dataType: 'xml',
success : function(data) {
$(data).find("friend").each(function () {
addToUserList($(this).find("username").text());
});
},
})
}
这里是 addToUserList 函数
var userList = new Array();
function addToUserList(friend){
var exists = false;
for(var i=1; i<userList.length; i++){
if(userList[i]==friend){
exists = true;
break;
}
}
if(!exists){
userList.push(friend);
$('#userList').append("<a>"+friend+"</a></br>");
以及返回的xml的一部分
<data>
<friend><username>[object HTMLInputElement]</username></friend>
<friend><username>asa</username></friend>
<friend><username>asda</username></friend>
<friend><username>cece</username></friend>
【问题讨论】:
-
能贴出addToUserList的代码吗?
-
能贴出XML sn-p的数据结构吗?
-
不相关的问题:数组从 0 开始,所以
var i=1;在for中应该是var i=0;。 -
也
</br>应该是<br/>最后它在这里工作 jsfiddle.net/gaby/y3FdT/1