解决方法:如何从数据列表中的复选框中获取值?复选框没有值。
<asp:DataList
ID='dlTest'
runat='server'
RepeatColumns='2'>
<ItemTemplate>
<asp:HiddenField ID='cbTestID' runat='server' value='<%# Eval("id") %>' />
<asp:CheckBox ID='cbTest' runat='server' /> <%# Eval("name") %><br />
</ItemTemplate>
// CODE BEHIND
foreach (DataListItem cb in dlTest.Items) {
CheckBox chk = (CheckBox)cb.FindControl("cbTest");
HiddenField hf = (HiddenField)cb.FindControl("cbTestID");
if(chk.Checked)
{
Response.Write(hf.Value);
}发布于 2011-09-21 11:23:02
请尝试使用文本CheckBox特性/属性而不是值。
<asp:CheckBox ID="cbTest" runat="server" Text="Text from Checkbox"/>
protected void Button1_Click(object sender, EventArgs e)
{
Label1.Text = cbTest.Text;
}将其付诸实践:demo
有关CheckBoxList (使用文本属性/属性)的实现,请参阅此article。
或者,如果您确实想使用CheckBox的Value属性,请选中此article。
HTH。
https://stackoverflow.com/questions/7493901
复制相似问题