[英]XML from Webservice syntaxerror jquery
我必須從服務器讀取XML請求。 如果我將XML保存在本地,則一切正常。
腳本:
$(document).ready(function () {
$.ajax({
type: 'GET',
url: 'http://localhost:1410/?SNO=56789&ASQL=plu%20mec%2010;',
crossDomain: true,
dataType: "jsonp",
success: parseXml
});
});
function parseXml(xml) {
$(xml).find('dataset').each(function () {
$("#output").append($(this).find('var[key="article.name"]').text() + "<br />");
});
}
XML輸出:
<document name="screen">
<section name="status">
<dataset>
<var key="organization.number">2919</var>
<var key="organization.name">Testname</var>
<var key="organization.businessdate">09.02.2013</var>
<var key="situation.number">0</var>
<var key="situation.name">Normalbetrieb</var>
<var key="site.number">0</var>
<var key="site.name">Normalbetrieb</var>
<var key="pricelevel.number">1</var>
<var key="pricelevel.name">Standardpreis</var>
<var key="terminal.number">0</var>
<var key="terminal.name">WebKasse</var>
<var key="terminal.status">open</var>
<var key="terminal.tapster">inactive</var>
<var key="waiter.number">1</var>
<var key="waiter.name">Kellner 1</var>
<var key="table.number">5</var>
<var key="table.balance">3.2</var>
<var key="table.sales">3.2</var>
<var key="profile.number">1</var>
<var key="profile.name">Standard</var>
<var key="execution.severity">I</var>
<var key="execution.code">23600003</var>
<var key="execution.message">Mec article list.</var>
</dataset>
</section>
<section name="plu.list">
<dataset>
<var key="type">article</var>
<var key="article.number">1</var>
<var key="article.name">0,1 l Becher Sekt</var>
<var key="article.displayname"/>
<var key="article.price">3.7</var>
<var key="article.plunumber">1</var>
<action key="STANDARD">book plu 1;</action>
</dataset>
[...]
使用此代碼,我的頁面為空白並顯示此錯誤:
SyntaxError: syntax error
<document name="screen"><section name="status"><dataset><var[...]
奇怪的是:我可以看到錯誤中的XML輸出!
如果我將data type:
更改為data type:
xml
沒有錯誤,頁面空白。
您應該使用dataType:xml,因為您希望獲得xml響應。 如果在不同的Web服務器上有不同的結果,請檢查響應的MIME類型。
我認為問題是錯誤的MIME類型。
或者您可以將響應獲取為String,然后使用jQuery將其解析為xml。
var xml = "<rss version='2.0'><channel><title>RSS Title</title></channel></rss>",
xmlDoc = $.parseXML( xml ),
$xml = $( xmlDoc ),
$title = $xml.find( "title" );
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.