通过如下方式:
oHttpReq.open("POST", "gsSub_Info.aspx?Id="+state, false); 
oHttpReq.send(""); 
result = oHttpReq.responseText;
可以获取result的值如下:
<?xml version="1.0" encoding="gb2312"?>
<NewDataSet>
    <Table>
        <sub_id>2</sub_id>
        <sub_name>商品小类2</sub_name>
    </Table>
</NewDataSet>但是如下:
var oDoc = new ActiveXObject("Msxml2.DOMDocument"); 
oDoc.async = false;
oDoc.resolveExternals = false;
oDoc.loadXML(result);
items1 = oDoc.selectNodes("//NewDataSet/Table/sub_id"); 
document.getElementById("gsSub_id").value = items1[0].text;gsSub_id得不到值,何解?恳求各位大侠出手相助,谢谢!异步xml

解决方案 »

  1.   

    我也遇到过着问题,我不会解决,问别人,别人让我用Jquery的Ajajx解决的 PS:我是用来做 二级下拉 不刷新联动。
      

  2.   

    恩,是啊,我也是用来做二级下拉不刷新联动的,晕啊!
    你有JQuery的例子吗?可以发我吗?谢谢!
      

  3.   

    oDoc.selectSingleNode("sub_id"); 
      

  4.   

    下拉菜单没有多少数据,换成json或者直接拼接字符串岂不是更好,
      

  5.   

    試下這個對象var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");   
        xmlDoc.async = false;  
        xmlDoc.load("dd.xml");  
       var nodes = xmlDoc.documentElement.childNodes;  
      
      for(var i=0;i<nodes.length;i++){  
         var node = nodes[i];  
         alert(node.childNodes[0].text+","+node.childNodes[1].text);  
      }  
      

  6.   

    +1  debugger走一下,看值 
      

  7.   

    感谢大家的回复,发现一个诡异的问题
    <script>
    window.onload = function(){
        var oDoc = new ActiveXObject("Msxml2.DOMDocument");
        document.getElementById("gsSub_id").value = "ABC";

    </script>gsSub_id所对应的文本框并不显示值:ABC但是,如果把var oDoc = new ActiveXObject("Msxml2.DOMDocument");去掉,就能显示值。这是为什么呢?
      

  8.   

    不折腾了,换Jason了,谢谢大家,给分!^_^