我在我的Gridview模板列中名爲「類別A」和「類別B」的複選框。 我希望選擇全部功能,即當用戶選中A類列中的全選複選框時,必須在該列下檢查所有複選框。同樣的B類。 我正在嘗試下面的代碼。我的代碼的問題是,它會選中整個gridview中的所有複選框,「類別A」以及「類別B」的複選框。 但是,我只想在同一列下選中複選框。使用jQuery選擇GridView ASP.NET中的所有複選框
function SelectAllCheckboxesA(chk) {
$('#<%=gvSurveys.ClientID %>').find("input:checkbox").each(function() {
if (this != chk) {
if ($(this).hasClass('CatA') != false) {
this.checked = chk.checked;
}
}
else {
alert($(this));
}
});
}
<asp:GridView ID="gvSurveys" runat="server" AutoGenerateColumns="false" AllowSorting="True" Width="1500px">
<Columns>
<asp:TemplateField>
<HeaderTemplate>Category A
<asp:CheckBox ID="chkSelectAllCatA" runat="server" Visible="false" onclick="javascript:SelectAllCheckboxesA(this);" CssClass="SACatA" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="chkCatA" runat="server" Enabled="false" CssClass="CatA" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
Category B
<asp:CheckBox ID="chkSelectAllCatB" runat="server" Visible="false" CssClass="CatB" onclick="javascript:SelectAllCheckboxesB(this);" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="chkCatB" runat="server" Enabled="false" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
爲了愛幼犬正確地格式化您的代碼(並接受一些答案)。 – R0MANARMY 2010-05-18 13:38:18
@ROMAN - 只有4個符合條件的問題和16個代表點。你可能想讓他有點鬆懈,並指出系統的工作原理。 – tvanfosson 2010-05-18 13:44:39
@tvanfosson:註冊用戶3個月。常見問題解答是有原因的。 – R0MANARMY 2010-05-19 03:07:42