2017-08-15 57 views
1

jQuery.parseXML()文檔中給出的例子中,如果簡單的XML給出訪問/解析SOAP消息(使用JQuery)

var xml = "<rss version='2.0'><channel><title>RSS Title</title></channel></rss>" 

由SOAP片段所取代,如下面

var xml = "<xyz:ServiceName>GetDetails</xyz:ServiceName>" 
所述一個

我收到無效的XML錯誤或無效/意外令牌錯誤。

訪問 <xyz:ServiceName>標記中的值應該是什麼程序?

回答

1

jQuery.parseXML()創建XML文檔。您將在此處得到無效的XML,因爲您正在使用名稱空間xyz這是而不是定義的。

所以,你可以定義一個元素與命名空間定義(任何網址都可以)和現在的工作很好 - 看演示如下:

var xml = `<root xmlns:xyz="http://www.w3.org/TR/html4/"> 
 
<xyz:ServiceName>GetDetails</xyz:ServiceName> 
 
</root>`; 
 
console.log(jQuery(jQuery.parseXML(xml)) 
 
    .find('root').html());
.as-console-wrapper{top:0;max-height:100%!important}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

但對於snippets,你可以做$(xml)

var xml = `<xyz:ServiceName>GetDetails</xyz:ServiceName>`; 
 
console.log($(xml).prop('outerHTML'));
.as-console-wrapper{top:0;max-height:100%!important}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

+1

非常感謝!它對代碼片段非常有效! :) – Supreeth