我有以下代码:
<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<p id="someElement"></p>
<p id="anotherElement"></p>
<script>
var xml = "<count>1</count><ticketID id='2'><incidentUrl>3</incidentUrl></ticketID>",
xmlDoc = $.parseXML( xml ),
$xml = $( xmlDoc ),
$title = $xml.find( "count" );
/* append "RSS Title" to #someElement */
$( "#someElement" ).append( $title.text() );
/* change the title to "XML Title" */
$title.text( "XML Title" );
/* append "XML Title" to #anotherElement */
$( "#anotherElement" ).append( $title.text() );
</script>
</body>
</html>
以上代码 - 产生错误:XML无效
但是,当我将var xml更改为: var xml =&lt;计数&gt; 1&lt; / count&gt; 它没有任何错误。
为什么会这样?
谢谢!
答案 0 :(得分:3)
答案 1 :(得分:1)
您的XML有多个根元素
<count>1</count><ticketID id='2'><incidentUrl>3</incidentUrl></ticketID>
将其包装在单个容器根元素中,它应该可以正常工作
<container><count>1</count><ticketID id='2'><incidentUrl>3</incidentUrl></ticketID></container>
答案 2 :(得分:1)
jQuery.parseXML()将字符串解析为XML文档。您的问题。
但是,当我将var xml更改为:var xml =
1 / count>时,它没有任何错误。 这是为什么?
那是因为您的数据已经是XML格式,不需要解析。只需继续下一行代码即可。
$xml = $( xmlDoc ),
$title = $xml.find( "count" );
无需解析XML。
希望对您有帮助