<OFFICE>
  <table>
   <OFFICE_CODE>SZH</OFFICE_CODE>
  </table>
  <table>
   <OFFICE_CODE>SZH</OFFICE_CODE>
  </table>
</OFFICE>客户端javascript脚本响应DropDownList1的change事情
var keyFd ;
var NamFd;
var ValFd;
var drp2 = document.getElementById("DropDrownList2");

for(var i = 0;i<=drp2.options.length -1;i++){  drp2.remove(i);  } 
var oHttpReq = new ActiveXObject("MSXML2.XMLHTTP"); 
var oDoc = new ActiveXObject("MSXML2.DOMDocument"); 
oHttpReq.open("POST", "ServerDropDownList.aspx?state="+state+"&DropList="+DropList+"", false); 
oHttpReq.send(""); 
result = oHttpReq.responseText;
alert(result);  //---->显示结果如上所示,是由ServerDropDownList.aspx 反回的结果oDoc.loadXML(result);
items = oDoc.selectNodes("//OFFICE/Table");  for (var item = items.nextNode(); item; item = items.nextNode()){ 
   var paramN = item.selectSingleNode("//OFFICE_CODE").nodeTypedValue;
   alert(paramN);  
//这里两次显示为SZH所以在第二个下拉列表中有两项为SZH,而没有SGH。为什么?????
//应该是第一项为SZH,第二项为SGH  ,
   var newOption = document.createElement("OPTION");  
       newOption.text = paramN;  
       newOption.value =paramN;
      drp2.options.add(ne wOption); 
     }
  }  ServerDropDownList.aspx 如下
============================
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
      'Put user code to initialize the page here
      Dim StateParam As String
      Dim DropListName As String
      Dim SQLStr As String
      Dim DataNam As String      StateParam = Me.Request("State").ToString
      StateParam = Trim(StateParam)
      DropListName = Me.Request("DropList").ToString
      DropListName = Trim(DropListName)      If StateParam <> "" Then
                           SQLStr = "select OFFICE_TAB.OFFICE_CODE from OFFICE_TAB,COUNTRY_TAB Where OFFICE_TAB.OFFICE_COUNTRYID=COUNTRY_TAB.COUNTRY_ID AND COUNTRY_TAB.COUNTRY_CODE='" & StateParam & "'"
               DataNam = "OFFICE"
 Dim con As SqlConnection = New SqlConnection(ConfigurationSettings.AppSettings("CRMStrconn"))
 Dim da As SqlDataAdapter = New SqlDataAdapter(SQLStr, con)
 Dim ds As DataSet = New DataSet(DataNam) da.Fill(ds)
 Dim writer As XmlTextWriter = New XmlTextWriter(Response.OutputStream, Response.ContentEncoding)
 writer.Formatting = Formatting.Indented
 writer.Indentation = 4
 writer.IndentChar = " "
 ds.WriteXml(writer)
 writer.Flush()
 Response.End()
 writer.Close()
 End If
End Sub

解决方案 »

  1.   

    你的xml数据:
    <OFFICE>
      <table>
       <OFFICE_CODE>SZH</OFFICE_CODE>
      </table>
      <table>
       <OFFICE_CODE>SZH</OFFICE_CODE>
      </table>
    </OFFICE>
    中本来就没有SGH啊 ???
      

  2.   

    to: WJ2929
    不好意思,打错了,第二个是SGH
      

  3.   

    其实我数据从serverDropdownlist.aspx反回的结果是对的,在客户端得到的也是正确的,只是在后的javascript解析时得不到正确的项
      

  4.   

    这是我在做无刷新dropdownlist级联时遇到的困难,如果这个问题解决
    我就可以完成了
    谢谢在家来顶,顶者有分
    分不够再加
      

  5.   

    var paramN = item.selectSingleNode("//OFFICE_CODE").nodeTypedValue;
    -------------》
    var paramN = item.selectSingleNode("OFFICE_CODE").nodeTypedValue;
      

  6.   

    to: wj2929
    谢谢,完全正确