我用 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 的值,,,我该怎么做,,,大家给点帮助..
<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 的值,,,我该怎么做,,,大家给点帮助..
<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)")
好的B/S程序尽量不要用后台方法
hk1.Attribute.Add("onchange","javascript:chge_hk(this.options[this.selectedIndex].value)")