我用 JS 在客户端 实现 select 联动, 并且 付给控件 runat="server" 属性 但我在服务器端 却不能 获得 第2个 select 控件所选的 VALUE 值代码如下: 大家看一下 我该怎么做.
 <SCRIPT language=JavaScript type=text/JavaScript>
var onecount_hk;
onecount_hk=0;
subcat_hk = new Array();
subcat_hk[0] = new Array("河南省","30","1");
subcat_hk[1] = new Array("郑州市","31","1");
subcat_hk[2] = new Array("洛阳市","32","1");
subcat_hk[3] = new Array("南阳市","33","1");
onecount_hk=4;
function chge_hk(locationid)
         {
    document.form1.hk2.length = 0;
    var fid=locationid;
    var i;
    for (i=0;i<onecount_hk;i++)
        {
            if(subcat_hk[i][2]==fid)
            {
             document.form1.hk2.options[document.form1.hk2.length]=new Option(subcat_hk[i][0],subcat_hk[i][1]);
            }
        } }<td> <select id="hk1" onchange=chge_hk(this.options[this.selectedIndex].value) name=hk1 runat="server">
                         <OPTION value=0 selected>--请选择--</OPTION><OPTION 
                    value=1>河南省</OPTION><OPTION value=2>河北省</OPTION>
</select>
 <select id="hk2" name=hk2 runat="server" >
                        <OPTION value=0 selected>--请选择--</OPTION>
</select>
 <SCRIPT language=JavaScript type=text/JavaScript>
for (i=1;i<onecount_hk;i++)
    {
 document.form1.hk2.options[i]=new Option(subcat_hk[i][0],subcat_hk[i][1]);
      }
</SCRIPT>
服务器端代码:
  protected void Button1_Click(object sender, EventArgs e)
    {
        this.TextBox1.Text = hk1.Items[hk1.SelectedIndex].Text.ToString() + hk2.Items[hk2.SelectedIndex].Text.ToString();
       
            
    } 但是总是获得不了 hr2 的值,,,我该怎么做,,,大家给点帮助..

解决方案 »

  1.   

    <select   id= "hk1 "   onchange=chge_hk(this.options[this.selectedIndex].value)   name=hk1   runat= "server "> 
                                                      <OPTION   value=0   selected> --请选择-- </OPTION> <OPTION   
                                            value=1> 河南省 </OPTION> <OPTION   value=2> 河北省 </OPTION> 
    </select> 
    服务端控件,添加client事件,应该要在后台代码load事件中写吧hk1.Attribute.Add("onchange","javascript:chge_hk(this.options[this.selectedIndex].value)")
      

  2.   

    不行呀 兄弟,,还是不可以获得 第二个select 的值,,因为每次 点击Button 都从新刷新了 页面,,第二个 select 的值有从新被刷新啦..该怎么作呢,,要不改 其他的方法 哪位  兄弟有更好的方法..
      

  3.   

    如果数据是动态的,那么用AJAX,如果是静态的那么就用javascript
    好的B/S程序尽量不要用后台方法
      

  4.   

    pageload 下面写上
    hk1.Attribute.Add("onchange","javascript:chge_hk(this.options[this.selectedIndex].value)")
      

  5.   

    必须用Request.Form["控件名字"].ToString()来获取!!!