UpdatePanel导致完全回发。试图做部分回发

时间:2013-03-29 19:30:43

标签: asp.net ajax updatepanel

我正在使用gridview显示数据的页面。我在ItemTemplate中有一些动态创建的文本框,每行包含几个文本框。现在我还有一个使用ajax的更新面板,只有在单击我的链接按钮后才能呈现。在我想要这样做之后,数据主义者被绑定在我的代码中,而不会导致完整的回发。但是,现在当我单击链接按钮时,它会导致完整的回发,从而消除了我动态创建的控件。

我觉得我非常接近解决方案。我需要其中一个发生(选项1似乎更有用): 单击链接按钮时不会导致回发,但仍然在更新面板中呈现我的完整数据列表

我在回发期间不会删除动态创建的控件。

这是我的代码:

 <ItemTemplate>
        [&nbsp;<asp:LinkButton ID="SelectCommand" CommandName="Select"  runat="server" Text="+" CssClass="sunocoBold"/>&nbsp;]
        <%-- 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>

2 个答案:

答案 0 :(得分:-1)

这是另一个链接,但它正是我的问题所在。也许它会有所帮助:LinkButton inside UpdatePanel results in full postback, UpdatePanel not triggered

答案 1 :(得分:-3)

UpdatePanel.Triggers是为此做的!

在这里查看:Understanding UpdatePanel.Triggers