我是AJAX的新手,并试图从XML文件构建一个下拉列表。在我的示例中,我只在菜单中发布"Akershus"。谁能帮我解决这个问题?最好的问候,来自挪威的学生。
下面是 XML:
<arrangement>
<fylke name="Akershus">
<fylke name="Buskerud">
<fylke name="Hordaland">
<fylke name="Nordland">
</arrangement>
这是脚本:
$(document).ready( function() {
arrangementer();
fetch();
});
/*function fetch() {
setTimeout( function() {
arrangementer();
fetch();
}, 100);
}*/
function arrangementer() {
$.ajax({
url: "arrangementer.xml",
dataType: "xml",
success: function(data) {
$('ul').children().remove();
$(data).find("arrangement").each( function() {
var info = '<a href="#">'+$(this).find("fylke").attr("name")+'</a>';
$('ul').append(info);
});
},
error: function() { $('ul').children().remove();
$('ul').append("<li>There was an error!</li>"); }
});
}
而不是
$(data).find("arrangement").each
用
$(data).find("arrangement fylke").each
并删除.find("fylke")
.
或者你可以更简洁地做到这一点(并通过适当的转义),
$(data).find('arrangement fylke').map(function() {
return $('<a href="#"></a>').text($(this).attr('name'));
}).appendTo('ul');