Javaサーブレットからユーザー名を使用してXMLを取得するためのこのAJAX関数があります。ここでユーザー名を解析して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>