设置从代码隐藏中选择的单选按钮列表
嘿,我有一个单选按钮列表,并尝试将其中一个单选按钮设置为基于会话变量进行选择,但事实证明这是不可能的。
<asp:radiobuttonlist id="radio1" runat="server" AutoPostBack="True" OnSelectedIndexChanged="RadioButtonList1_SelectedIndexChanged">
<asp:listitem id="option1" runat="server" value="All"/>
<asp:listitem id="option2" runat="server" value="1" />
<asp:listitem id="option3" runat="server" value="2" />
</asp:radiobuttonlist>
即如何将 option2 设置为在代码后面选择?
Hey I have a radiobuttonlist and trying to set one of the radiobuttons to selected based on a session variable but proving impossible.
<asp:radiobuttonlist id="radio1" runat="server" AutoPostBack="True" OnSelectedIndexChanged="RadioButtonList1_SelectedIndexChanged">
<asp:listitem id="option1" runat="server" value="All"/>
<asp:listitem id="option2" runat="server" value="1" />
<asp:listitem id="option3" runat="server" value="2" />
</asp:radiobuttonlist>
I.e How can I set option2 to selected in code behind ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
我认为,最好的选择是使用
ListItem
的Value
属性,该属性在RadioButtonList
中可用。我必须指出
ListItem
是否NOT 有 ID 属性。因此,在您的情况下,要选择第二个元素(选项2),将是:
或者,但以非常相同的方式,您可以向 SelectedIndex 提供一个 int 。
The best option, in my opinion, is to use the
Value
property for theListItem
, which is available in theRadioButtonList
.I must remark that
ListItem
does NOT have an ID property.So, in your case, to select the second element (option2) that would be:
Alternatively, yet in very much the same vein you may supply an int to SelectedIndex.
您可以这样做:
但这是最简单的形式,随着 UI 的增长,很可能会出现问题。举例来说,如果团队成员在
option2
上方的RadioButtonList
中插入一个项目,但不知道我们使用幻数 在代码隐藏中进行选择 - 现在应用程序选择了错误的索引!也许您想研究使用 FindControl 为了通过名称确定实际需要的
ListItem
,并进行适当的选择。例如:You could do:
But this is the most simple form and would most likely become problematic as your UI grows. Say, for instance, if a team member inserts an item in the
RadioButtonList
aboveoption2
but doesn't know we use magic numbers in code-behind to select - now the app selects the wrong index!Maybe you want to look into using FindControl in order to determine the
ListItem
actually required, by name, and selecting appropriately. For instance:尝试这个选项:
Try this option:
我们可以按值更改项目,技巧如下:
We can change the item by value, here is the trick:
// 如果您选择其他单选按钮,则将 [0] 增加到 [1] 或 [2],如下所示
// if you select other radiobutton increase [0] to [1] or [2] like this