我正在使用gridview显示数据的页面。我在ItemTemplate中有一些动态创建的文本框,每行包含几个文本框。现在我还有一个使用ajax的更新面板,只有在单击我的链接按钮后才能呈现。在我想要这样做之后,数据主义者被绑定在我的代码中,而不会导致完整的回发。但是,现在当我单击链接按钮时,它会导致完整的回发,从而消除了我动态创建的控件。
我觉得我非常接近解决方案。我需要其中一个发生(选项1似乎更有用): 单击链接按钮时不会导致回发,但仍然在更新面板中呈现我的完整数据列表
或
我在回发期间不会删除动态创建的控件。
这是我的代码:
<ItemTemplate>
[ <asp:LinkButton ID="SelectCommand" CommandName="Select" runat="server" Text="+" CssClass="sunocoBold"/> ]
<%-- start sub panel--%>
<asp:UpdatePanel ID="UpdatePanel2" runat="server">
<ContentTemplate>
<asp:DataList ID="DataList1" runat="server" RepeatDirection="Vertical"
OnItemCommand="DataList_OnItemCommand">
<ItemTemplate>
<asp:LinkButton ID="Select" CommandName="SelectCommand" CommandArgument='<%#Eval("ship_to_num")%>' runat="server" Text='<%#Eval("ship_to_num")%>' />
</ItemTemplate>
</asp:DataList>
</ContentTemplate>
</asp:UpdatePanel>
<%-- end sub panel--%>
</ItemTemplate>
<asp:TemplateField HeaderText="Site Owner" ItemStyle-HorizontalAlign="Center" ItemStyle-VerticalAlign="Top">
<ItemTemplate>
<asp:Panel ID="pnlNames" runat="server">
</asp:Panel>
<%-- <asp:Literal ID="NameList" runat="server" /> --%>
</ItemTemplate>
</asp:TemplateField>
答案 0 :(得分:-1)
这是另一个链接,但它正是我的问题所在。也许它会有所帮助:LinkButton inside UpdatePanel results in full postback, UpdatePanel not triggered
答案 1 :(得分:-3)
UpdatePanel.Triggers是为此做的!