我有这段代码:
$.ajax({
type: "GET",
url: trgUrl,
success: function (data)
{
var xml= $.parseXML(data);
{
var obj= $.xml2json(xml);
//....
}
});
和data
可以是:
"<name> Mike </name>"
现在,问题是在使用$.xml2json(xml)
之后,为了显示我需要写的名字:
alert(obj.name.value); // Mike
而不只是:
alert(obj.name); // object object
换句话说:$.xml2json
将<name>
的内容转换为另一个对象(而不是将其作为直接字符串)
我该如何解决这个问题?有没有人遇到过这个问题?
答案 0 :(得分:2)
修改插件如下:
// Add element value
if(node.childElementCount == 0 && node.textContent != null && node.textContent != "") {
/* comment out ".value" */
result[node.nodeName]/*.value */= node.textContent.trim();
}
DEMO:http://jsfiddle.net/ycN37/
如果节点有子节点,这可能会产生问题,这可能是作者在第一时间创建对象的原因