我的代码如下:
<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做到这一点?
答案 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>
微软的消息来源。希望这有用!