0
         <script>
            $(document).ready(function(){
            var xml = "<rss version='2.0'><channel><title>MyTitle</title></channel></rss>";
            var data = $.parseXML(xml);
            console.log(data);
            $(data).find('rss').each(function(){
            var name = $(this).attr('version');
            $('<div class="items"></div>').html('<a href="'+name+'"></a>').appendTo('#page-wrap');
            });
        });
    </script>
<body>
    <div id="page-wrap">
        </div>
</body>

上面的代码有什么问题?我只是得到一个空白页。它甚至没有超出 var 数据声明。

编辑:现在我将正确的 xml 传递给 parseXML() 但仍然没有结果。还缺少什么?

EDIT2:知道为什么下面的代码不会在 Chrome 浏览器上显示任何输出吗?尽管将脚本和 html 代码放入 JSFiddle 时会产生正确的结果。

EDIT3:使用 jquery-1.9.0 使它工作。感谢大家的帮助和支持。

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

    <script type="text/javascript" src="jquery.js">

$(document).ready(function(){
            var xml = "<rss version='2.0'><channel><title>MyTitle</title></channel></rss>";
            var data = $.parseXML(xml);
            console.log(data);
            $(data).find('rss').each(function(){
            var name = $(this).attr('version');
            $('<div class="items"></div>').html('<a href="'+name+'">'+name+'</a>').appendTo('#page-wrap');
            });
        });

     </script>
</head>
<body>
    <div id="page-wrap"></div>
</body>
</html>
4

3 回答 3

3

请参阅jquery 文档。输入 parseXML应该是格式良好的 xml 字符串,而不是文件位置

于 2013-04-08T10:46:43.203 回答
2

您的浏览器进程无法直接从您的文件系统打开文件,如果可以的话,这将是一个容易被利用的安全漏洞。

于 2013-04-08T10:45:10.413 回答
1

你搞错了。

  1. 您正在寻找methodxml 中实际上不存在的节点。
  2. attr('name') 是什么?它属于谁?
  3. <a>标签确实具有显示为链接的文本。例如<a href="url">The Text</a>
  4. 最后,由于您要附加(包装在 a 中),因此我简化了您的代码。

遵循以下小提琴:JS Fiddle to your code

于 2013-04-08T12:24:23.003 回答