2017-08-15 94 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