更新面板更新

时间:2009-08-26 14:12:20

标签: c# asp.net visual-studio ajax updatepanel

我有更新面板,里面有一个网格。网格的数据取决于用户的内容

插入搜索文本框。他们将点击搜索,然后在客户端点击网格幻灯片

我使用的一些Ajax动画。我的问题是我希望网格重新加载

中的文本

搜索框作为参数数据。如何在点击

时重新加载Grid的更新面板

按钮?

<font color="blue">Search:</font><asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:ImageButton ID="ImageButton2" runat="server" ImageUrl="~/images/bttnSearch.gif" Height="19" />
</p>
<div id="moveMe" style="display:">
    <div style="float:right;">
    <asp:LinkButton ID="lnkBtnCloseColHelp" runat="server" Text="X" OnClientClick="return false;" />
  </div>
<br /><br />
<center>
     <table>
     <tr>
        <td>
             <asp:UpdatePanel ID="UpdatePanel1" runat="server" >
             <ContentTemplate >
                    //Gridview and SqlDatasource goes here.
             </ContentTemplate>   
              <Triggers>
                <asp:AsyncPostBackTrigger ControlID = "ImageButton2" EventName = "Click"/>
             </Triggers> 
             </asp:UpdatePanel> 

我的网格无法加载,因为它需要在文本框中获取该数据。该文本框是否也应该在更新面板内?关于如何在点击搜索按钮后根据文本框的文本单独重新加载网格的任何想法。

3 个答案:

答案 0 :(得分:1)

以这种方式“黑客”怎么样?在UpdatePanel中有一个虚拟隐藏文本框或隐藏字段控件。单击按钮时,将实际文本框值的客户端副本执行到隐藏控件。不优雅,但应该工作。

其他信息: 如果触发器设置为AsyncPostBack:

    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="Button1">
        </asp:AsyncPostBackTrigger>
    </Triggers>

回发实际上获取了UpdatePanel之外的所有控件的值。所以我的黑客根本不需要。

答案 1 :(得分:0)

是的,这有点模糊,所以我的回答也是如此。您必须在后面的代码中处理图像按钮的单击事件。此时,您需要使用更新的结果重新绑定gridview。

答案 2 :(得分:0)

您可以将这两个部分放在不同的更新面板中。

您可以拥有一个包含搜索框输入和图像按钮的更新面板,以及另一个包含网格控件的更新面板。