如何使用搜索按钮刷新GridView?

时间:2011-09-15 09:09:43

标签: jquery asp.net ajax

我的aspx页面中有一个gridview和一个搜索文本框。现在我的要求是,只要在此文本框中键入任何内容,就必须根据文本框的类型值刷新gridview。

是否可以使用Gridview或我需要使用Jquery网格?

提前致谢。

5 个答案:

答案 0 :(得分:0)

我刚刚从我的一个项目中拔出来,这就是我的2个文本框TextChanged事件被解雇了

我会再次运行该程序(使用模式匹配),然后将其附加到绑定源。

如果您只想在按下按钮时发生这种情况,请将其按下按钮事件

 private void FindTextChange(object sender, EventArgs e)
        {

                System.Data.SqlClient.SqlParameter[] param = new System.Data.SqlClient.SqlParameter[3];
                param[0] = new System.Data.SqlClient.SqlParameter("@param1", SqlDbType.VarChar, 50);
                param[1] = new System.Data.SqlClient.SqlParameter("@param2", SqlDbType.VarChar, 50);
                param[2] = new System.Data.SqlClient.SqlParameter("@SysproDB", SqlDbType.VarChar, 50);
                param[0].Value = txt1.Text;
                param[1].Value = txt2.Text;
                param[2].Value = System.Configuration.ConfigurationSettings.AppSettings["SysproDB"].ToString();
                param[0].Direction = ParameterDirection.Input;
                param[1].Direction = ParameterDirection.Input;
                param[2].Direction = ParameterDirection.Input;
                result = (DataTable)SessionClass.dbc.runStoredProc(procedure, param);
                BindingSource.DataSource = result;
        }

答案 1 :(得分:0)

使用Javascript检测文本框中的输入。最好在用户按键时设置超时,以避免进行多次回发:

var timer;
function chk_me(){

   clearTimeout(timer);
   timer=setTimeout(function refreshGridview(){...},1000);
}

使用GetPostBackEventReference方法获取导致网格视图回发的javascript。

答案 2 :(得分:0)

要刷新gridview,您需要在输入内容时进行回发:

<asp:TextBox runat="server" ID="myTextBox" onkeyup="this.form.submit();" />

onkeyup =“this.form.submit();”添加到文本框后,会在发布密钥后将表单提交给服务器。

如果gridview的数据绑定是在pageload上完成的,那么这就是你需要添加的全部内容。

如果您的数据绑定是由其他一些操作触发的,例如搜索按钮,您必须从javascript触发它或使用WebMethod来调用数据绑定。

答案 3 :(得分:0)

你可以试试这个:

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
    <ContentTemplate>
        <asp:TextBox ID="TextBox1" runat="server" OnTextChanged="TextBox1_TextChanged" AutoPostBack="true" />

        <!-- put your grid inside the update panel too -->

    </ContentTemplate>
</asp:UpdatePanel>

答案 4 :(得分:0)

您可以简单地将数据绑定到网格视图绑定的数据源。

Datasource1.selectparameters["someParameters"].defaultvalue=Textbox1.text;
Datasource1.DataBind();
Gridview1.DataSource=Datasource1;
Gridview1.DataBind();