function mainBillXml(){
//alert("开始下载运单信心.........................");
$.ajax({
    url:'xml/mainbill.xml',
  dataType:'xml',
error: function(xml){
     alert(xml+"加载XML 文件出错!");   
      },  
success: function(data){  
                $(data).find("mainbill").each(function() {
   alert($(this).find("mainbill"));
       var $MBILLID=$(this).children("MBILLID").text();//主运单号
   var $MPCS=$(this).children("MPCS").text();//件数
   var $MWEIGHT=$(this).children("MWEIGHT").text();//重量
   var $MVOL=$(this).children("MVOL").text();//体积
   var $SALESAGENT=$(this).children("SALESAGENT").text();//销售代理人
           var $OPERAAGENT=$(this).children("OPERAAGENT").text();//操作代理人
   var $SPECOPEID=$(this).children("SPECOPEID").text();//特货代码
   alert($MBILLID);
//   insertMainbillInfo($MBILLID,$MPCS,$MWEIGHT,$MVOL,$SALESAGENT,$OPERAAGENT,$SPECOPEID);//把获取的主运单信息添加本地sqlite
 
   var $HABILL=$(this).find("HABILL");
       if($HABILL!=null){//若存在子节点,则获取子节点信息
   var $HABILLID=$HABILL.children("HABILLID").text();//分单号码
   var $HPCS=$HABILL.children("HPCS").text();//分单件数
   var $HWEIGHT=$HABILL.children("HWEIGHT").text();//分单重量
   var $HVOL=$HABILL.children("HVOL").text();//分单体积
   alert($HABILLID);
//  insertHAabillInfo($HABILLID,$HPCS,$HWEIGHT,$HVOL);//把获取的分运单信息添加到本地sqlite
  //var $HABILLID=$(this).find("HABILL").children("HABILLID").text();
//alert($HABILLID);
}else{ alert("您所读取的分单不存在")}
                                 insertMainbillInfo($MBILLID,$MPCS,$MWEIGHT,$MVOL,$SALESAGENT,$OPERAAGENT,$SPECOPEID);//把获取的主运单信息添加本地sqlite
 insertHAabillInfo($HABILLID,$HPCS,$HWEIGHT,$HVOL);//把获取的分运单信息添加到本地sqlite
});
}
});

// uldUploadXml();//下载ULD集装器
  
}XMLAjaxSQLite

解决方案 »

  1.   

    <?xml version="1.0" encoding="utf-8"?>
     
    <queryres>
     
       <billinfo>
     
               <RESULT>
                         <CODE>0</CODE>      
                         <REMARK>-1</REMARK>
               </RESULT>
       
                <!--主运单-->
               <MAINBILL id="1">
                  <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</HABILLID>
       <HPCS>1</HPCS>
       <HWEIGHT>1.5</HWEIGHT>
       <HVOL>0.3</HVOL>
                   </HABILL>         </MAINBILL>
     
       <!--主运单-->
      <MAINBILL id="2">
                  <MBILLID>520000000</MBILLID>
                  <MPCS>10</MPCS>
                  <MWEIGHT>60.5</MWEIGHT>
                  <MVOL>7.5</MVOL>
                  <SALESAGENT>hehe</SALESAGENT>
                  <OPERAAGENT>haha</OPERAAGENT>
                  <SPECOPEID>6568767</SPECOPEID>
       <!--分运单-->
                   <HABILL>
       <HABILLID>H20117</HABILLID>
       <HPCS>2</HPCS>
       <HWEIGHT>2.5</HWEIGHT>
       <HVOL>0.5</HVOL>
                   </HABILL>         </MAINBILL>
     
     
     </billinfo>
     
     </queryres>
      

  2.   


    function mainBillXml(){
    $.ajax({
    url:'mainbill.xml',
    dataType:'xml',
    error: function(xml){
    alert(xml+"----");
    },
    success: function(data){
    $(data).find("MAINBILL").each(function() {
    alert($(this).find("MBILLID").text());
    });
    }
    });}
    经测试完全可用,请楼主注意大小写,xml中节点大小写一定要和js中获取节点的名称大小写一致。
      

  3.   

    上面的代码我我拿到本地测试的时候精简的代码,xml文件内容和楼主给的一致,楼主可用吧success后的代码覆盖测试一下。注意是$(data).find("MAINBILL").each(function() 中MAINBILL一定要和xml文件中的大小写一致。