如何使用asp.net获取html select的选定值

时间:2010-03-04 10:11:00

标签: asp.net html html-select

我的代码如下:

<select id="testSelect">
    <option value="1">One</option>
    <option value="2">Two</option>
</select>
<asp:Button ID="btnTest" runat="server" Text="Test it!" onclick="btnTest_Click" />

我需要在回发时获得所选期权的价值。我怎么能用asp.net做到这一点?

5 个答案:

答案 0 :(得分:41)

您需要为<select>元素添加名称:

<select id="testSelect" name="testSelect">

它将发布到服务器,您可以使用以下方式查看:

Request.Form["testSelect"]

答案 1 :(得分:6)

如果您使用asp:dropdownlist,可以通过testSelect.Text更轻松地选择它。

现在,您需要执行Request.Form["testSelect"]才能在按下btnTes后获取值。

希望它有所帮助。

编辑:您需要指定name选择(不仅是ID)才能Request.Form["testSelect"]

答案 2 :(得分:6)

我已经使用此解决方案来获得您所需的信息。

让我们在我的.aspx代码中说出一个选择列表runat =&#34; server&#34;:

<select id="testSelect"  runat="server" ClientIDMode="Static" required>
    <option value="1">One</option>
    <option value="2">Two</option>
</select>

在我的C#代码中,我使用下面的代码来检索文本以及选项的值:

testSelect.SelectedIndex == 0 ? "uninformed" : 
    testSelect.Items[testSelect.SelectedIndex].Text);

在这种情况下,我会检查用户是否选择了任何选项。如果没有选择任何内容,我会将文字显示为&#34;不知情&#34;。

答案 3 :(得分:1)

Java脚本:

使用elementid. selectedIndex()函数获取所选索引

答案 4 :(得分:1)

<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">    
<head>
    <title> HtmlSelect Example </title>
    <script runat="server">
      void Button_Click (Object sender, EventArgs e)
      {
         Label1.Text = "Selected index: " + Select1.SelectedIndex.ToString()
                       + ", value: " + Select1.Value;    
      }    
   </script>    
</head>    
<body>    
   <form id="form1" runat="server">

      Select an item: 

      <select id="Select1" runat="server">    
         <option value="Text for Item 1" selected="selected"> Item 1 </option>
         <option value="Text for Item 2"> Item 2 </option>
         <option value="Text for Item 3"> Item 3 </option>
         <option value="Text for Item 4"> Item 4 </option>
      </select>

      <button onserverclick="Button_Click" runat="server" Text="Submit"/>

      <asp:Label id="Label1" runat="server"/>    
   </form>
</body>
</html>

微软的消息来源。希望这有用!