【发布时间】:2017-12-10 02:32:57
【问题描述】:
这是 GridView 的设计。
<asp:GridView ID="gmainrole" runat="server" OnRowDataBound="gmainrole_RowDataBound">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<input type="checkbox" id="chkavail" runat="server" checked='<%#Eval("checkstatus") %>' />
<asp:Literal ID="litstate" runat="server" Text='<%#Eval("areaname") %>'></asp:Literal>
<asp:Literal ID="lituserrole" runat="server" Text='<%#Eval("nid") %>' Visible="false"></asp:Literal>
<asp:GridView ID="subrole" runat="server" AutoGenerateColumns="false" OnRowDataBound="subrole_RowDataBound">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="chk1vail" runat="server" Checked='<%#Eval("checkstatus") %>' />
<asp:Literal ID="litstate" runat="server" Text='<%#Eval("areaname") %>'></asp:Literal>
<asp:Literal ID="lituserrole" runat="server" Text='<%#Eval("nid") %>' Visible="false"></asp:Literal>
<asp:DataList ID="glastrole" runat="server" GridLines="None" AutoGenerateColumns="false" OnItemDataBound="glastrole_ItemDataBound">
<ItemTemplate>
<div>
<asp:CheckBoxList runat="server" ID="chklastrole">
</asp:CheckBoxList>
<asp:Literal ID="Literal1" runat="server" Text='<%#Eval("areaname") %>'></asp:Literal>
<asp:Literal ID="litlast" runat="server" Text='<%#Eval("nid") %>' Visible="false"></asp:Literal>
<asp:DataList ID="ecounter" runat="server" GridLines="None" AutoGenerateColumns="false">
<ItemTemplate>
<asp:CheckBoxList runat="server" ID="chklastrole">
</asp:CheckBoxList>
<asp:Literal ID="Literal11" runat="server" Text='<%#Eval("areaname") %>'></asp:Literal>
<asp:Literal ID="litlast1" runat="server" Text='<%#Eval("nid") %>' Visible="false"></asp:Literal>
</ItemTemplate>
</asp:DataList>
</div>
</ItemTemplate>
</asp:DataList>
</table>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</td>
</tr>
</table>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
这个 GridView 是一个四层嵌套的 GridView,其中下两层是 DataList,上两层是 GridView。我希望当用户检查名为subrole(level 2) 的第二个 GridView 中的 CheckBox 时,DataList glastrole(level 3) 和 DataList ecounter(level 4) 中的所有后续 CheckBoxes 都会检查他们的 CheckBoxes那个特定的 2 级复选框。我会给你我到目前为止尝试过的代码,但事实是我什至不知道如何解决这个问题。请帮忙!
【问题讨论】:
标签: c# asp.net gridview checkbox nested