Javascript JQuery Mobile-从XML生成列表

Javascript JQuery Mobile-从XML生成列表,javascript,jquery,xml,jquery-mobile,Javascript,Jquery,Xml,Jquery Mobile,所以我正在做一个项目,它确实涉及从我们的XML文件生成一个列表。我对如何解析数据以及如何生成listview做了一些研究 下面是包含我试图访问的ListView的Div <div data-theme="c" data-role="content"> <!--The list we shall generate--> <h4>Facilities</h4> <ul data-role="listview" data-t

所以我正在做一个项目,它确实涉及从我们的XML文件生成一个列表。我对如何解析数据以及如何生成listview做了一些研究

下面是包含我试图访问的ListView的Div

<div data-theme="c" data-role="content">
    <!--The list we shall generate-->
    <h4>Facilities</h4>
    <ul data-role="listview" data-theme="c" id="facilitiesList">

    </ul>       
</div>

设施
这是我用来生成列表的代码

$(document).on("pagecreate","#Facilities",function() {
    var xmlLoc = $.get("http://cjorchard.me.uk/ECApp/Data.xml");
    xmlDoc = $.parseXML(xmlLoc),
    $xml = $(xmlDoc);
    var output = '';
    $xml.find('item').each(function() {
        output += '<li><a href="#">' + $(this).find('Title').text() + '</a></li>'
    });
    $('#facilitiesList').html(output);
});
$(文档)。在(“页面创建”,“设施”,函数()上){
var xmlLoc=$.get(“http://cjorchard.me.uk/ECApp/Data.xml");
xmlDoc=$.parseXML(xmlLoc),
$xml=$(xmlDoc);
var输出=“”;
$xml.find('item')。每个(函数(){
输出+='
  • ' }); $(“#设施列表”).html(输出); });
    目前,我不确定它为什么不起作用。任何想法都将不胜感激

    编辑-也没有显示任何错误

    编辑2-我现在已将Javascript更新为以下内容…

    $(document).on("pagecreate","#Facilities",function() {
        var xmlLoc = $.get("http://cjorchard.me.uk/ECApp/Data.xml", function(data) {
            xmlDoc = $.parseXML(data),
            $xml = $(xmlDoc);
            var output = '';
            $xml.find('item').each(function() {
                console.log($(this).find('Title').text());
                output += '<li><a href="#">' + $(this).find('Title').text() + '</a></li>'
            });
            $('#facilitiesList').html(output).listview().listview("refresh");
        });
    });
    
    $(文档)。在(“页面创建”,“设施”,函数()上){
    var xmlLoc=$.get(“http://cjorchard.me.uk/ECApp/Data.xml,函数(数据){
    xmlDoc=$.parseXML(数据),
    $xml=$(xmlDoc);
    var输出=“”;
    $xml.find('item')。每个(函数(){
    console.log($(this.find('Title').text());
    输出+='
  • ' }); $(“#设施列表”).html(输出).listview().listview(“刷新”); }); });
    您是否进行了一些alert()或console.log()调用,以查看是否按照预期生成了输出?另外,最后一行应该是$('#facilitiesList').html(output.listview(“refresh”);列表未设置样式或列表未获取任何数据?@Omar-当前未生成该列表。@ezanker-我尝试将最后一行更新为您所述的内容,但收到“初始化前无法调用listview上的方法”。在修复了这个问题之后,列表仍然没有生成——在添加了输出后,没有显示任何内容——这让我相信它可能是XML文件。但是,当查看XML时,我发现格式没有问题。$.get是一个ajax调用,因此需要在success函数中处理结果:$.get(“,函数(数据){var xmlDoc=$.parseXML(数据);$XML=$(xmlDoc);等等……});应用程序编程接口: