C#ASP.NET Datalist和HTML单选按钮
-
11-12-2019 - |
题
我的网站有语言改变控制,所以当点击一种语言时,我重新加载相同的页面,而是用不同的语言文本,以及用户已经在表单中有字段,我必须重新加载数据。
我已经设法将数据汇入复选框,文本框,而不是无线瓶颈
请看我的代码
我有一个数据区和里面的单选按钮。
<asp:DataList runat="server" ID="dlRole">
<ItemTemplate>
<input type="radio" id="rblRole" name="rblRole" value='<%# Eval("RoleCode") %>' />
<asp:Label ID="lbRole" runat="server" Text='<%# Eval("Description")%>'></asp:Label>
</ItemTemplate>
</asp:DataList>
.
我加载DataList,单选按钮
dlRole.DataSource = ...
dlRole.DataBind();
.
我将单选按钮值保存到用户会话对象中
user.Role = Request["rblRole"];
.
但是当我将保存的对象重新加载到单选按钮中时,它找不到单选按钮对象控制....单选按钮始终为空。而且我不确定为什么
foreach (DataListItem item in dlRole.Items)
{
HtmlInputRadioButton radio = (item.FindControl("rblRole") as HtmlInputRadioButton);
if (radio != null) <--- always nulll
{
if (radio.Value == user.Role.ToString())
{
radio.Checked = true;
}
else
radio.Checked = false;
}
}
.
请让我知道如何解决这个问题 谢谢
解决方案
需要添加
runat="server"
.
在您的单选按钮否则将无法从后面的代码访问。
不隶属于 StackOverflow