我用2003的的一个项目 不能用ajax做了(不然我也不会在这里提问题鸟)我用js做鸟一个DropDownList无刷新联动,效果是出来鸟~~~但是当你DropDownList.SelectedItem.Value的时候取不到值(值是空的,因为是客户端添加的所以服务器端是怎么都取不到值)我现在的问题就是  怎么把这个值取到~~~下面是我js代码
function load(){ 
var drp2 = document.getElementById("select2"); 
drp2.innerText="";
for(var i = 0;i<=drp2.options.length -1;i++){ 
drp2.remove(i); 

var drp3 = document.getElementById("select3"); 
for(var i = 0;i<=drp3.options.length -1;i++){ 
drp3.remove(i); 

var xmlhttp = new ActiveXObject("MSXML2.XMLHTTP"); 
var oDoc = new ActiveXObject("MSXML2.DOMDocument"); 
var state=document.getElementById("select1").value;
xmlhttp.open("POST", "zhongjian.aspx?rank="+state,false);
xmlhttp.send("");
var res=oDoc.loadXML(xmlhttp.responseText);
var naItems = oDoc.selectNodes("//Market/Table/sort"); 
var idItems = oDoc.selectNodes("//Market/Table/sort"); 
var item;
var id;
for (item = naItems.nextNode(),id=idItems.nextNode(); item&&id; item = naItems.nextNode(),id=idItems.nextNode()){ 
var nastr = item.nodeTypedValue; 
var idstr = id.nodeTypedValue;
var newOption = document.createElement("OPTION"); 
newOption.text =nastr; 
newOption.value = idstr; 
     
     
drp2.options.add(newOption); 


  

 

解决方案 »

  1.   

    var   naItems   =   oDoc.selectNodes("//Market/Table/sort"); 确认你 dataset 里的表名。是 Market/Table吗?
    你可以调试,查看在写 XML之前看你返回的DataSet 结构。
      

  2.   

    一般情况下都是 //Table/字段名
      

  3.   

    可以考虑通过使用服务器端控件HiddenField来实现,添加select的onchange事件保存当前的选中状态到Hiddenfield,在服务器端就可以获取到。
      

  4.   

    我说了 效果出来了~~就是取不到值~~~("//Market/Table/sort")这个是正确的~~~~请看清楚我的问题啊~~~~`我现在急到要啊
      

  5.   

    哈哈~~终于做出来鸟~~~谢谢大家的支持~~下面我把我的方法放在下面供其他人参考:
    蛮简单的...呵呵
    Label1.Text=Request.Form["select2"];我这是个测试~~你把这段代码放在按钮中你就知道效果鸟~
    Request.Form["你想要获取那个控件的id"]  呵呵 就这么简单.