无法使用jquery解析XML

时间:2014-03-24 22:12:06

标签: jquery xml parsexml

    var xmlData = "<?xml version="1.0" encoding="UTF-8"?>
<InfoPostRpt>
<Band>
<ColumnHeaders>
  <ColumnHeader id="1" prefix="k_">
    <RptFld align="left" val="TSP_Name"></RptFld>
    <RptFld align="left" val="TSP_Prop"></RptFld>
    <RptFld align="left" val="K_Holder_Name"></RptFld>
    <RptFld align="left" val="K_Holder_Prop"></RptFld>
    <RptFld align="left" val="Svc_Req_K"></RptFld>
    <RptFld align="left" val="K_Beg_Date"></RptFld>
    <RptFld align="left" val="K_End_Date"></RptFld>
    <RptFld align="left" val="K_Ent_Beg_Date"></RptFld>
    <RptFld align="left" val="K_Ent_End_Date"></RptFld>
    <RptFld align="left" val="K_Ent_Beg_Time"></RptFld>
    <RptFld align="left" val="K_Ent_End_Time"></RptFld>
    <RptFld align="left" val="Cap_Type"></RptFld>
    <RptFld align="left" val="Cap_Type_Name"></RptFld>
    <RptFld align="left" val="K_Stat"></RptFld>
  </ColumnHeader>
</ColumnHeaders>    

</Band>
</InfoPostRpt>";

alert ( xmlData );

我尝试使用jQuery.parseXML(xmlData)解析XML,但它提供了解析错误,没有任何deatils。

这里缺少什么?

2 个答案:

答案 0 :(得分:1)

var xmlData = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" +
"<InfoPostRpt>" +
"<Band>" +
"<ColumnHeaders>" +
"  <ColumnHeader id=\"1\" prefix=\"k_\">" +
"    <RptFld align=\"left\" val=\"TSP_Name\"></RptFld>" +
"    <RptFld align=\"left\" val=\"TSP_Prop\"></RptFld>" +
"    <RptFld align=\"left\" val=\"K_Holder_Name\"></RptFld>" +
"    <RptFld align=\"left\" val=\"K_Holder_Prop\"></RptFld>" +
"    <RptFld align=\"left\" val=\"Svc_Req_K\"></RptFld>" +
"    <RptFld align=\"left\" val=\"K_Beg_Date\"></RptFld>" +
"    <RptFld align=\"left\" val=\"K_End_Date\"></RptFld>" +
"    <RptFld align=\"left\" val=\"K_Ent_Beg_Date\"></RptFld>" +
"    <RptFld align=\"left\" val=\"K_Ent_End_Date\"></RptFld>" +
"    <RptFld align=\"left\" val=\"K_Ent_Beg_Time\"></RptFld>" +
"    <RptFld align=\"left\" val=\"K_Ent_End_Time\"></RptFld>" +
"    <RptFld align=\"left\" val=\"Cap_Type\"></RptFld>" +
"    <RptFld align=\"left\" val=\"Cap_Type_Name\"></RptFld>" +
"    <RptFld align=\"left\" val=\"K_Stat\"></RptFld>" +
"  </ColumnHeader>" +
"</ColumnHeaders></Band></InfoPostRpt>";
jQuery.parseXML(xmlData);

以上工作对我来说很好。字符串需要在一行上(或者你可以像我一样使用字符串连接),你需要转义双引号。

答案 1 :(得分:0)

我使用此在线工具将XML转换为兼容JAVA的文字:http://xmltoolbox.appspot.com/