我有以下 SOAP 响应:
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<getPurseBalanceResponse xmlns="https://secure.card.com/">
<getPurseBalanceResult>
<callStatus>
<Success>true</Success>
<ErrorCode/>
</callStatus>
<balance>63.35</balance>
<pending>30</pending>
<logoUrl>https://prepa.sqasddsad.com/ytm/images/logos/sq_cashlesscaterpurse3.gif</logoUrl>
<purseId>23456</purseId>
<CurrencyCode>GBP</CurrencyCode>
</getPurseBalanceResult>
</getPurseBalanceResponse>
</soap:Body>
</soap:Envelope>
我的问题是,我可以用 jQuery 解析它吗,如下所示...
var xmlText = $(xml).find("soap:Envelope").
find("soap:Body").
find("getPurseBalanceResponse").
find("getPurseBalanceResult").
find("balance").text();
console.log(xmlText);
目前这会返回一个空字符串 - 获取“余额”的正确 jQuery
调用是什么?
最佳答案
您需要使用双反斜杠转义特殊字符(冒号)\\
var xmlText = $(xml).find("soap\\:Envelope")
.find("soap\\:Body")
.find("getPurseBalanceResponse")
.find("getPurseBalanceResult")
.find("balance").text();
console.log(xmlText);
这是一个working fiddle .
关于javascript - 是否可以使用 jQuery xml 处理程序解析 SOAP 响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8329322/