如何使用jquery/javascript从xml提取数据并发布到div

如何使用jquery/javascript从xml提取数据并发布到div,javascript,jquery,html,xml,Javascript,Jquery,Html,Xml,我试图使用jQuery或JavaScript从xml文件中获取twitch.tv流的标题,然后将该标题发布到div(作为节头)。该标题位于xml文件的部分 下面是我目前的代码,它似乎不起作用: $(文档).ready(函数(){ $.ajax({ 键入:“获取”, url:“http://www.twitch.tv/meta/koibu.xml", 数据类型:“xml”, 成功:函数(xml){ var xmlDoc=$.parseXML(xml), $xml=$(xmlDoc); $(xml)

我试图使用jQuery或JavaScript从xml文件中获取twitch.tv流的标题,然后将该标题发布到div(作为节头)。该标题位于xml文件的
部分

下面是我目前的代码,它似乎不起作用:

$(文档).ready(函数(){
$.ajax({
键入:“获取”,
url:“http://www.twitch.tv/meta/koibu.xml",
数据类型:“xml”,
成功:函数(xml){
var xmlDoc=$.parseXML(xml),
$xml=$(xmlDoc);
$(xml).find('meta status').each(function(){
$('#block').append(“+$(this.text()+”);
});
}
});
});
这是一个-与我的坏脚本-玩

编辑:使用json调用而不是读取xml来解决它

        $(document).ready(function(){
            var names = ["koibu"];

            var obj = jQuery.parseJSON('{"name": {"life": "{life}","logo": "{logo}","status": "{status}","preview": "{preview}","url": "{url}"}}');

            grabJSON();

            function grabJSON() {
                setTimeout(grabJSON,1000);
                for (index = 0; index < names.length; ++index) {

                    $.getJSON("https://api.twitch.tv/kraken/channels/" + names[index] + "/?callback=?", function (json) {
                        $('#lefttitle').empty(),
                        $('#lefttitle').append("<h2>" + json.status + "</h2>");

                    });
                }
            }
        });
$(文档).ready(函数(){
变量名称=[“koibu”];
var obj=jQuery.parseJSON(“{”name:“{”life:“{life}”,“logo:“{logo}”,“status:“{status}”,“preview:“{preview}”,“url:{url}”);
grabJSON();
函数grabJSON(){
setTimeout(grabJSON,1000);
对于(索引=0;索引

这还允许我设置一个很好的小数组,以便在将来扩展时从多个通道获取更多数据。

如果您没有遇到这种问题,那么实际问题如下所示

$(xml).find('status').each(function(){
    $('#block').append("<h2>" + $(this).text() + "</h2>");
});

我成功地获取了您的XML文件,并且
status
标记包含Monday Mafia

当前代码有什么问题?@jibsales我正试图将xml文件的status部分的文本附加到“#block”div中,但是这个脚本不起作用,我不知道为什么。编辑:例如,流的当前标题是“制图!”。理想的效果是#块显示地图!如果不使用CORS,您无法使用js从其他站点获取xml数据。您有权访问xml文档吗?因为跨起源限制在小提琴中。经过一些挖掘,我发现我患了CORS,你知道一种简单的方法来避免这种情况吗?@CameronGuthrie simple-way!!如果数据类型是JSON,那么将
datatype
更改为
jsonp
将解决CORS问题。但在你的情况下,这是不可能的。解决方案:在同一台服务器上托管html和xml文件的唯一方法。我也有同样的问题,检查我的问题
$xml = $(xmlDoc);
$xml.find('status').each(function(){
    $('#block').append("<h2>" + $(this).text() + "</h2>");
});