所有的复选框都被选中返回,即使"“
本文关键字:即使 quot 返回 复选框 | 更新日期: 2023-09-27 18:03:25
我有一个记录列表,我使用中继器在屏幕上显示。其中一列包含一个复选框"已联系"。我已经设置了一些需要检查的记录,一些没有。(在DB中)……但是当页面加载时,所有的记录都被检查了……有人知道为什么吗?
<input type="checkbox" name="chkBox"
checked='<%# SetCheckboxValue((bool)Eval("Contacted"))%>' />
"已联系"是一个bool值,在后面的代码中取决于记录是否被检查(从DB)
protected string SetCheckboxValue(bool Contacted)
{
if (Contacted)
{
return "checked";
}
return String.Empty;
}
SetCheckboxValue获取T或F,应该返回"checked"或" "然后应用程序应该显示每条记录为选中或空..但正如我所说的所有记录都显示为选中?
有什么想法吗?由于
因为属性checked
是布尔属性,不需要值
它的存在与否表示复选框是否被选中。
将你的标记改为:
<input type="checkbox" name="chkBox" <%# SetCheckboxValue((bool)Eval("Contacted"))%> />
注意:为了与X/HTML兼容,您应该生成属性标记为:checked="checked"
,但对于HTML,更简单的checked
就足够了。
protected string SetCheckboxValue(bool Contacted)
{
if (Contacted)
{
return "checked='"checked'"";
}
return String.Empty;
}
checked
中的值是不必要的,完全是可选的。
<input type='checkbox' checked />
与
相同<input type='checkbox' checked='checked' />
与
相同<input type='checkbox' checked='' />
您需要完全删除属性checked
以取消选中复选框。