jquery ajax 解析xml子节点 下 的子节点, 加载时,直接返回error,加载失败了,怎么回事。

<queryres><billinfo><RESULT><CODE>0</CODE><REMARK>-1</REMARK></RESULT><!--主运单--><main... <queryres>
<billinfo>

<RESULT>
<CODE>0</CODE>
<REMARK>-1</REMARK>
</RESULT >

<!--主运单-->
<mainbill>
<MBILLID>12312311</MBILLID>
<MPCS>2</MPCS>
<MWEIGHT>39.5</MWEIGHT>
<MVOL>6.5</MVOL>
<SALESAGENT>AAS</SALESAGENT>
<OPERAAGENT>ALL</OPERAAGENT>
<SPECOPEID>9816</SPECOPEID>
<!--分运单-->
<HABILL>
<HABILLID>H891801</MBILLID>
<HPCS>1</HPCS>
<HWEIGHT>1.5</HWEIGHT>
<HVOL>0.3</HVOL>
</HABILL>
</mainbill>

</billinfo>

</queryres>
//解析主运单,并修改其数据状态
function mainBillXml(){
$.ajax({
url:'xml/mainbill.xml',
dataType:'xml',
error: function(xml){
alert(xml+"加载XML 文件出错!");
},
success: function(data){

$(data).find("billinfo").find("mainbill").each(function() {
// var $HABILL=$(this).context.childNodes["HABILL"].length;

alert($HABILL);
// if($($HABILL)!=null){
// var a=$($HABILL).children("HABILLID").text();
// }
// var $MBILLID=$(this).children("MBILLID").text();

// alert($MBILLID);

});
}
});
}
加载时就报错了,进入error里面了,
展开
 我来答
匿名用户
2013-04-10
展开全部

ajax代码贴出来看看


简单的测试了下。 可能是你的xml文件编码有问题,或者格式有问题

$(function(){
$.ajax({
url:'xml.xml',
dataType:'xml',
success: function(data){
$(data).find("queryres").each(function(){
alert($(this).attr("a"));
});
},
error: function(xml){
console.debug(xml);//firebug打印
}
});
});

xml文件

<queryres a="test">
<billinfo></billinfo>
</queryres>
更多追问追答
追问
应该是的,如果把分运单里面的各个属性去掉,就可以加载解析xml了,可是公司项目给的xml格式就这样的,
追答
H891801,看到没,标签错误,肯定不完整了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式