如题
html控件select如何在后台得到其选中的text.(不要加runat="server")如request.form["select1"]可以得到value

解决方案 »

  1.   


    <select id="funny" name="sick">
                <option value="0">00</option>
                <option value="1">11</option>
                <option value="2">22</option>
    </select>
    <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
    注意, 我特意把id与name的值弄的不一样.protected void Button1_Click(object sender, EventArgs e)
    {
      Response.Write( Request.Form["sick"].ToString());
    }显示出来的是value值. 而不是text. 
      

  2.   

    ...
    楼上 我要的是text不是value
      

  3.   


    <select id="funny" name="sick" onchange="go.value=this[this.selectedIndex].text;">
                <option value="0">00</option>
                <option value="1">11</option>
                <option value="2">22</option>
    </select>
    <input type="hidden" name="go" value="00" />
    <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />protected void Button1_Click(object sender, EventArgs e)
    {
            //Response.Write( Request.Form["sick"].ToString());
            Response.Write(Request.Form["go"]);
    }
      

  4.   


    <select id="funny" name="sick" onchange="go.value=this[this.selectedIndex].text;">
                <option value="0">00</option>
                <option value="1">11</option>
                <option value="2">22</option>
    </select>
    <input type="hidden" name="go" value="00" />
    <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />protected void Button1_Click(object sender, EventArgs e)
    {
            //Response.Write( Request.Form["sick"].ToString());
            Response.Write(Request.Form["go"]);
    }
      

  5.   


    <select id="funny" name="sick" onchange="go.value=this[this.selectedIndex].text;">
                <option value="0">00</option>
                <option value="1">11</option>
                <option value="2">22</option>
    </select>
    <input type="hidden" name="go" value="00" />
    <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />protected void Button1_Click(object sender, EventArgs e)
    {
            //Response.Write( Request.Form["sick"].ToString());
            Response.Write(Request.Form["go"]);
    }
      

  6.   

    恩这个 应该行
    试试去 好用的话 马上结贴
    不过没有直接能得到text的属性吗
      

  7.   

    好像没有什么好方法
    要不在数据源上想办法
    比如生成的时候,把text跟value的值组合存放在value上,后台得到后在拆分
    0,00
    1,11
    这种方式
      

  8.   

    你甚至可以整的更“完美”些,不指定hidden field的初始值。
    <body onload="var sel=document.getElementById('funny'); var hid=document.getElementById('go'); hid.value=sel[sel.selectedIndex].text;">
        <form id="form1" runat="server">
        <div>
            <select id="funny" name="sick" onchange="go.value=this[this.selectedIndex].text;">
                <option value="0">00</option>
                <option value="1">11</option>
                <option value="2">22</option>
            </select>
            <input type="hidden" name="go" id="go" />
            <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
        </div>
        </form>
    </body>
      

  9.   

    给分的话给namhyuk, 我是他马甲:-)
      

  10.   

    function   optionData(){   
              var   objSelect   =   document.getElementById('SelectID');      
              var selText   =   objSelect.options[objSelect.selectedIndex].text;   
              var selValue   =   objSelect.options[objSelect.selectedIndex].value;   
    这是js方法,怎么弄到后台去就不用教了
      

  11.   

    试了下 namhyuk的 好用
    不多说 结贴给分