<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
<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
<OFFICE>
<table>
<OFFICE_CODE>SZH</OFFICE_CODE>
</table>
<table>
<OFFICE_CODE>SZH</OFFICE_CODE>
</table>
</OFFICE>
中本来就没有SGH啊 ???
不好意思,打错了,第二个是SGH
我就可以完成了
谢谢在家来顶,顶者有分
分不够再加
-------------》
var paramN = item.selectSingleNode("OFFICE_CODE").nodeTypedValue;
谢谢,完全正确