判断repeater内的CheckBoxList是否被选中
repeater
循环一个选项卡div
每个div内都有个CheckBoxList
<asp:Repeater ID="rptrLanguageDivs" runat="server" OnItemDataBound="rptrLanguageDivs_ItemDataBound">
<ItemTemplate>
<div id="idTab_Info<%# Container.ItemIndex+2 %>" class="tab">
<i>
<%=GetLocaleResourceString("Admin.Localizable.EmptyFieldNote")%></i>
<asp:Label ID="lblLanguageId" runat="server" Text='<%#Eval("LanguageId") %>' Visible="false"></asp:Label>
<table class="adminContent">
<tr>
<td class="adminTitle">
<nopCommerce:ToolTipLabel runat="server" ID="lblLocalizedAttributeName" Text="<% $NopResources:Admin.ProductVariantAttributeValues.New.Name %>"
ToolTip="<% $NopResources:Admin.ProductVariantAttributeValues.New.Name.Tooltip %>"
ToolTipImage="~/Administration/Common/ico-help.gif" />
</td>
<td class="adminData">
<%-- <asp:TextBox runat="server" CssClass="adminInput" ID="txtNewLocalizedName" />--%>
<asp:CheckBoxList ID="cbl_ProductAttributeValueList" runat="server" RepeatDirection="horizontal" >
</asp:CheckBoxList>
</td>
</tr>
</table>
</div>
</ItemTemplate>
</asp:Repeater>
绑定
protected void rptrLanguageDivs_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
ProductVariantAttribute pva = ProductAttributeService.GetProductVariantAttributeById(this.ProductVariantAttributeId);
int ProductAttributeId = 0;
if (pva != null)
{
ProductAttributeId=pva.ProductAttributeId;
}
if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item)
{
Language lg = (Language)e.Item.DataItem;
int LanguageID = lg.LanguageId;
CheckBoxList ckb = (CheckBoxList)e.Item.FindControl("cbl_ProductAttributeValueList");
ckb.DataSource = ProductAttributeService.GetProductAttributeValues(LanguageID, ProductAttributeId, null);
ckb.DataTextField = "Name";
ckb.DataValueField = "ProductAttributeValueID";
ckb.DataBind();
}
}
foreach (RepeaterItem item in rep_user.Items)
{
CheckBox cb = (CheckBox)item.FindControl("cb_id");
if (cb.Checked)
}
mark = true;
}
}
if (mark)
{
Response.Write("有选中");
}
else
{
Response.Write("无选中");
}
}
[解决办法]