select下拉框取值问题100分????

问题描述

js省市联动的select下拉框,怎么在aspx下面得到选中的值为什么我得的空详解。。。

解决方案

解决方案二:
在onselectchange事件中将里面的值写给一个服务器控件。然后取得时候取这个服务器控件的值就可以了
解决方案三:
用requst.form来取值看.我以前也碰到过类似的问题。后来干脆我把它换成了html控件了,然后取值的时候用request.form,赋值的时候用变量<%=%>来赋值
解决方案四:
document.all["控件名"].options[document.all["控件名"].selectedIndex].text
解决方案五:
或者用Request.Form["下拉框的name"]
解决方案六:
前台:<HTML><HEAD><title>XmlHttp实现无刷新三联动下拉框</title><metaname="GENERATOR"Content="MicrosoftVisualStudio.NET7.1"><metaname="CODE_LANGUAGE"Content="C#"><metaname="vs_defaultClientScript"content="JavaScript"><metaname="vs_targetSchema"content="http://schemas.microsoft.com/intellisense/ie5"></HEAD><body><formid="Form1"method="post"runat="server"><INPUTstyle="Z-INDEX:102;LEFT:448px;WIDTH:56px;POSITION:absolute;TOP:8px;HEIGHT:24px"onclick="getData();"type="button"value="test"><asp:TextBoxid="TextBox1"style="Z-INDEX:101;LEFT:16px;POSITION:absolute;TOP:8px"runat="server"Width="424px"></asp:TextBox><asp:DropDownListid="DropDownList2"runat="server"style="Z-INDEX:103;LEFT:176px;POSITION:absolute;TOP:48px"></asp:DropDownList><asp:DropDownListid="DropDownList1"runat="server"style="Z-INDEX:104;LEFT:16px;POSITION:absolute;TOP:48px"></asp:DropDownList><asp:DropDownListid="DropDownList3"runat="server"style="Z-INDEX:105;LEFT:296px;POSITION:absolute;TOP:48px"></asp:DropDownList><SCRIPTLANGUAGE="JavaScript"><!--//以XML求取DropDownList2的数据functionXmlPost2(obj){//debugger;  varsvalue=obj.value;  varwebFileUrl="?provinceid="+svalue;  varresult="";  varxmlHttp=newActiveXObject("MSXML2.XMLHTTP");  xmlHttp.open("POST",webFileUrl,false);  xmlHttp.send("");  result=xmlHttp.responseText;    if(result!="")  {  //debugger;    document.all("DropDownList2").length=0;    varpiArray=result.split(",");    for(vari=0;i<piArray.length;i++)    {      varary1=piArray[i].toString().split("|");      document.all("DropDownList2").options.add(newOption(ary1[1].toString(),ary1[0].toString()));    }  }  else  {    alert(result);  }}//以XML求取DropDownList3的数据functionXmlPost3(obj){  varsvalue=obj.value;  varwebFileUrl="?cityid="+svalue;  varresult="";  varxmlHttp=newActiveXObject("MSXML2.XMLHTTP");  xmlHttp.open("POST",webFileUrl,false);  xmlHttp.send("");  result=xmlHttp.responseText;    if(result!="")  {    document.all("DropDownList3").length=0;    varpiArray=result.split(",");    for(vari=0;i<piArray.length;i++)    {      varary1=piArray[i].toString().split("|");      document.all("DropDownList3").options.add(newOption(ary1[1].toString(),ary1[0].toString()));    }  }  else  {    alert(result);  }}functiongetData(){varprovince=document.getElementById("DropDownList1");varpindex=province.selectedIndex;varpValue=province.options[pindex].value;varpText=province.options[pindex].text;varcity=document.getElementById("DropDownList2");varcindex=city.selectedIndex;varcValue=city.options[cindex].value;varcText=city.options[cindex].text;vararea=document.getElementById("DropDownList3");varaindex=area.selectedIndex;varaValue=area.options[aindex].value;varaText=area.options[aindex].text;vartxt=document.getElementById("TextBox1");document.getElementById("<%=TextBox1.ClientID%>").innerText="省:"+pValue+"|"+pText+"市:"+cValue+"|"+cText+"区:"+aValue+"|"+aText;}//--></SCRIPT></form></body></HTML>后台publicstaticstringConnectionString=System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"];#regionGetDataSetpublicstaticDataSetGetDataSet(stringsql){SqlDataAdaptersda=newSqlDataAdapter(sql,ConnectionString);DataSetds=newDataSet();sda.Fill(ds);returnds;}#endregion#regionpropertyprivatestringprovinceid{get{if(ViewState["provinceid"]!=null&&ViewState["provinceid"].ToString()!=""){returnViewState["provinceid"].ToString();}else{if(Request["provinceid"]!=null&&Request["provinceid"].ToString()!=""){returnRequest["provinceid"];}else{return"";}}}set{ViewState["provinceid"]=value;}}privatestringcityid{get{if(ViewState["cityid"]!=null&&ViewState["cityid"].ToString()!=""){returnViewState["cityid"].ToString();}else{if(Request["cityid"]!=null&&Request["cityid"].ToString()!=""){returnRequest["cityid"];}else{return"";}}}set{ViewState["provinceid"]=value;}}#endregion#regionPage_LoadprotectedvoidPage_Load(objectsender,System.EventArgse){if(!this.IsPostBack)  {    this.down1_bind();this.DropDownList1.Attributes.Add("onchange","XmlPost2(this);");this.DropDownList2.Attributes.Add("onchange","XmlPost3(this);");  }  if(provinceid!="")  {    this.down2_bind(provinceid);  }if(cityid!="")  {    this.down3_bind(cityid);  }}#endregion#regiondown2_bindprivatevoiddown2_bind(stringid){  stringmystr="";  stringsql="selectcityID,cityfromcitywherefather='"+id+"'";  DataSetds=GetDataSet(sql);  if(ds.Tables[0].Rows.Count!=0)  {    for(inti=0;i<ds.Tables[0].Rows.Count;i++)    {      mystr+=","+ds.Tables[0].Rows[i][0].ToString()+"|"+ds.Tables[0].Rows[i][1].ToString();    }    mystr=mystr.Substring(1);  }  this.Response.Write(mystr);  this.Response.End();}#endregion#regiondown3_bindprivatevoiddown3_bind(stringid){  stringmystr="";  stringsql="selectareaID,areafromareawherefather='"+id+"'";  DataSetds=GetDataSet(sql);  if(ds.Tables[0].Rows.Count!=0)  {    for(inti=0;i<ds.Tables[0].Rows.Count;i++)    {      mystr+=","+ds.Tables[0].Rows[i][0].ToString()+"|"+ds.Tables[0].Rows[i][1].ToString();    }    mystr=mystr.Substring(1);  }  this.Response.Write(mystr);  this.Response.End();}#endregion#regiondown1_bindprivatevoiddown1_bind(){  stringsql="selectprovinceID,provincefromprovince";  DataSetds=GetDataSet(sql);  this.DropDownList1.DataSource=ds;  this.DropDownList1.DataValueField="provinceID";  this.DropDownList1.DataTextField="province";  this.DropDownList1.DataBind();  }#endregion
解决方案七:
up
解决方案八:
onselectchange="方法"autopostback=true;
解决方案九:
将autopostback设置为true,使它可以自动处理就可以实现了。

时间: 2024-08-30 03:26:35

select下拉框取值问题100分????的相关文章

js选择Select下拉框值自动填充到输入框

这功能比较实用,很多情况下我们都能用得到,其实代码挺简单的,你还可以无限制的添加任意个下拉列表框的值,选中时自动显示在文本框. JavaScript使用parentNode.nextSibling.value实现的本功能,实际上你会发现网页上有两个控件元素,一个是Select,一个是input,使用CSS将input覆盖于select之上,再使用JS将下拉框的值赋值给input,实际上是用input模拟出了select的功能,思路很新颖,也不知到底有多少人需要select可输入文字的功能,下面是

Ext form表单加载时 下拉框取值的问题

问题描述 Ext form表单加载时 加载的数据 后台传的的是id号,下拉框匹配的时候匹配当该id的name可是现在有个问题,当表单加载完成 下拉框的数据还没加载完成 这时下拉框显示的id,不是name只有当下拉框数据源先加载完 表单数据后加载完 才显示的是name.....有人说 给下拉框数据源添加 load事件 在load事件方法里面 给组件赋值:Ext.getCmp("组件Id").set(value).可是这个value 是form表单里jsonreade里的 我怎么能方便的取

SelecT下拉框选中和取值的解决方法_jquery

 Select下拉框的问题,想在选择一个选项后,前台显示做出变动,并且知道选择的是第几个选项. 这个很好解决: 如下: <div class="page-header"> <div class="form-horizontal"> <div class="control-label col-lg-0"> </div> <div class="col-lg-2"> &l

JavaScript获取Select下拉框OptionValue和Text值方法

  Js获取select下拉列表框各个Option的Value值相对比较容易,不过获取Text值却有点麻烦,对于一个初学JavaScript的新手来说,可能一时还无从下手,那么就请看下本文的方法,以一个form表单中的Select下拉框菜单为例,来说明如何用JavaScript获取其Value值和Text值: 示例表单,里面是一个select下拉列表框的各个列表项及值: 接下来是JavaScript部分,获取Select的各个Value值和Text值:

赋值-c# 后台给select下拉框设置默认值

问题描述 c# 后台给select下拉框设置默认值 点击编辑时 要给下拉框赋值,在后台拿到对应的值后怎么给下拉框赋值.控件.属性=值: 请问是哪个属性.谢谢 解决方案 select是客户端的?还是服务器端的asp:DropDownList 客户端的直接 document.getElementById('selid').value='<%=cs后台文件中一个protected全局变量%>' 服务器的用ddl.SelectedValue=xxxx 解决方案二: 到底要默认值还是要赋值啊. 你说的是

select下拉框里面的值有很多个

问题描述 select下拉框里面的值有很多个 如果select下拉框里有很多个值怎么用数组来装,总不能下n多个option吧,而且我还想拿到每个值得value,请问怎么实现 解决方案 机器人给出的第二个答案就是,原理都是先循环外层,获取每一个内层,再做一个类型判断,看看获取到的每一个是不是你要的,然后取值就行 aaa bbb ccc var list[];var aa;//获取外层aa=document.getElementById('s2');//循环获取内层 for (i=0;i<aa.le

利用jquery获取select下拉框的值_jquery

jquery不是特别熟练,每次使用不常用的就要百度,特地记录下来. 我的下拉框是: <div class="form-group"> <select class="form-control" id="iv_level"> <option value="">店员</option> <option value="">店长</option>

jQuery操作select下拉框的text值和value值的方法_jquery

1.jquery获取当前选中select的text值 var checkText=$("#slc1").find("option:selected").text(); 2.jquery获取当前选中select的value值 var checkValue=$("#slc1").val(); 3.jquery获取当前选中select的索引值 var index=$("#slc1 ").get(0).selectedIndex; 4

jQGrid动态填充select下拉框的选项值(动态填充)_jquery

本文给大家分享一段代码关于技巧jqgrid动态填充select 下拉框的选项值,非常不多说了,直接给大家贴代码了,具体代码如下所示: function gettypes(){ //动态生成select内容 var str=""; $.ajax({ type:"post", async:false, url:"checkpersontype", success:function(data){ if (data != null) { var json