asp.Net复选框没有值
本文关键字:复选框 Net asp | 更新日期: 2023-09-27 18:09:05
已解决:如何从数据列表中的复选框获得值?复选框没有VALUE。
<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);
}
你没有VALUE复选框因为它只是一个单独的项目,这意味着它可以是True或False你可以像这样检查它,
if(myCheckBox.Selected)
{ do this.. or even fire an event when it changed.
or assign some number to some datatype.. }
另一方面,CheckBoxList和其他列表一样也有值
CheckBoxList1.SelectedValue
你可以做以下两件事:使用checkboxlist
CheckBoxList1.SelectedIndex
CheckBoxList1.SelectedItem
尝试使用Text CheckBox属性/属性代替Value。
<asp:CheckBox ID="cbTest" runat="server" Text="Text from Checkbox"/>
protected void Button1_Click(object sender, EventArgs e)
{
Label1.Text = cbTest.Text;
}
演示:demo有关CheckBoxList(使用Text属性/属性)的实现,请参阅本文。
或者,如果您真的想使用CheckBox的Value属性,请查看本文。
HTH .