解析方式一: $( function (){ var str= "<xml><result><NewDataSet><Table><UserName>test1</UserName></Table><Table><UserName>test2</UserName></Table></NewDataSet></result></xml>" ; var str1= "<xml><result><NewDataSet><Table1><UserName>test1</UserName></Table1><Table1><UserName>test2</UserName></Table1></NewDataSet></result></xml>" ; $(str).find( 'Table' ).each( function (){ alert($( this ).children( 'UserName' ).text()); }); $(str1).find( 'Table1' ).each( function (){ alert($( this ).children( 'UserName' ).text()); }); }); |
Jquery解析XML字符串
执行结果,前两个弹出空(节点不能包含Table,原因不明),后两个弹出正确结果。
原因:
1
2
|
alert($(str).html()); //<result><newdataset><username>test1</username><table></table><username>test2</username><table></table></newdataset></result> |
解析方式二:
1
2
3
4
5
6
7
|
$( function () { var str = "<xml><result><NewDataSet><Table><UserName>test1</UserName></Table><Table><UserName>test2</UserName></Table></NewDataSet></result></xml>" ; var a = $.parseXML(str); $(a).find( 'Table' ).each( function () { alert($( this ).children( 'UserName' ).text()); }); });
|