void btnSave_Click(object Sender, EventArgs e)
{
HtmlInputCheckBox chkUpdate = (HtmlInputCheckBox)rptVersions.Items[i].FindControl("chkUpdate");
if (chkUpdate.Checked)
{
/* some code */
}
}
aspx代码:
C#
void btnSave_Click(object Sender, EventArgs e)
{
HtmlInputCheckBox chkUpdate = (HtmlInputCheckBox)rptVersions.Items[i].FindControl("chkUpdate");
if (chkUpdate.Checked)
{
/* some code */
}
}
ASPX
<input type="checkbox" versionid='<%#Eval("VersionId") %>' class="checkbox" runat="server" id="chkUpdate" />
JS
$('.checkbox').each(function () {
if ($(this).attr('versionid') == '<%=qryStrVersion%>' && '<%=qryStrVersion%>' != '') {
$(this).attr("checked", "checked");
}
else
$(this).removeAttr("checked");
});
如果第一次点击保存按钮,则chkUpdate的值始终为false。但如果我点击多次,它的工作正常。可以有人帮忙吗?
答案 0 :(得分:1)
可能会失败,因为Eval("VersionId")
和<%=qryStrVersion%>
不完全相同。调试您的页面并检查这两者的值,看它们是否相同。
我运行了这个JSFiddle,根据它的外观,如果这两个值不相同,则第一次加载页面时不会检查复选框。
答案 1 :(得分:0)
由于哪个网格在单个动作调用上绑定了两次,我没有使用if(!ispostback)。 大家好!