我在父面板树上选择了一个父UpdatePanel树,我正在启用/禁用子UpdatePanel按钮。但它不是为什么? 如何在父更新面板内容事件的事件上更新子面板内容?
<asp:UpdatePanel runat="server" ID="parentPanel" UpdateMode="conditional">
<ContentTemplate>
<asp:TreeView id="tree1" runat="server"></asp:TreeView>
<div id="div_RemitEditor" style="width:225px; display: none;">
<asp:UpdatePanel ID="childUpdatePanel" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Button id="btn1" runat="server"></asp:Button>
<Content>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<asp:TreeView id="tree2" runat="server"></asp:TreeView>
</ContentTemplate>
</asp:UpdatePanel>
答案 0 :(得分:0)
指定ChildrenAsTriggers="true"
UpdateMode="Conditional"
答案 1 :(得分:0)
在您的情况下,如果在 ParentUpdatePanel 中触发回发事件, ChildUpdatePanel 会自动更新。
启用/禁用 btn1 不起作用的唯一原因是您使用的控件不会触发回发事件。因此,您可能希望在客户端更改启用/禁用。
这是我的解决方案。
让我知道它是否有效。
$(document).ready(function () {
$('input[type = "checkbox"]').click(function () {
$('input[id$="btnChild"]').toggle();
});
});
<asp:ScriptManager ID="MainScriptManager" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel id="parentPanel" runat="server" UpdateMode="Conditional" >
<ContentTemplate>
<asp:TreeView ID="tree1" runat="server" ShowCheckBoxes="All">
<Nodes>
<asp:TreeNode Checked="true" Expanded="true" Text="Toggle Child Button" >
<asp:TreeNode Text="Child" ShowCheckBox="true">
</asp:TreeNode>
</asp:TreeNode>
</Nodes>
</asp:TreeView>
<div id="div_RemitEditor">
<asp:UpdatePanel ID="childUpdatePanel" runat = "server">
<ContentTemplate>
<asp:Button ID="btnChild" runat="server" Text = "Child Button"/>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<asp:ScriptManager ID="MainScriptManager" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel id="parentPanel" runat="server" UpdateMode="Conditional" >
<ContentTemplate>
<asp:TreeView ID="tree1" runat="server" ShowCheckBoxes="All">
<Nodes>
<asp:TreeNode Checked="true" Expanded="true" Text="Toggle Child Button" >
<asp:TreeNode Text="Child" ShowCheckBox="true">
</asp:TreeNode>
</asp:TreeNode>
</Nodes>
</asp:TreeView>
<div id="div_RemitEditor">
<asp:UpdatePanel ID="childUpdatePanel" runat = "server">
<ContentTemplate>
<asp:Button ID="btnChild" runat="server" Text = "Child Button"/>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</ContentTemplate>
</asp:UpdatePanel>