嗨,伙计们,我正在研究一个搜索按钮,将搜索用户在数据库中的UserName或他们的城市或其他任何东西。我试着给Username设置一个参数,我在里面放了一个文本框,如果他在文本框中写了一些东西,然后点击按钮,它将只显示具有他在文本框中写的UserName的用户……但这不是工作的家伙,请帮我找出如何使它…
代码:
1HTML(VeryShort):
<asp:TextBox ID="txtUserNameFooter" runat="server" />
<asp:Button ID = "SearchButton" Text = "חפש" runat="server" onclientclick="SearchButton_Click" onclick="SearchButton_Click" />
2个Asp.net (C#)数据库
protected void SearchButton_Click(object sender, EventArgs e)
{
using (OleDbConnection sqlCon = new OleDbConnection(connectionStr))
{
sqlCon.Open();
string query = "SELECT * FROM Users WHERE UserName=@UserName";
OleDbCommand sqlCmd = new OleDbCommand(query, sqlCon);
sqlCmd.Parameters.AddWithValue("@UserName", txtUserNameFooter.Text);
sqlCmd.ExecuteNonQuery();
PopulateGridView();
sqlCon.Close();
}
}
3 PopulateGridView代码
void PopulateGridView()
{
DataTable dtbl = new DataTable();
using (OleDbConnection sqlCon = new OleDbConnection(connectionStr))
{
sqlCon.Open();
OleDbDataAdapter sqlDa = new OleDbDataAdapter("SELECT * FROM Users", sqlCon);
sqlDa.Fill(dtbl);
}
if (dtbl.Rows.Count > 0)
{
AdminBook.DataSource = dtbl;
AdminBook.DataBind();
}
else
{
dtbl.Rows.Add(dtbl.NewRow());
AdminBook.DataSource = dtbl;
AdminBook.DataBind();
AdminBook.Rows[0].Cells.Clear();
AdminBook.Rows[0].Cells.Add(new TableCell());
AdminBook.Rows[0].Cells[0].ColumnSpan = dtbl.Columns.Count;
AdminBook.Rows[0].Cells[0].Text = "No Data Found";
AdminBook.Rows[0].Cells[0].HorizontalAlign = HorizontalAlign.Center;
}
}
网站Click Here to Look for it的图片
我想让它使当你写在文本框中,并按下按钮,它将搜索如果他们的用户名称为文本框,然后,如果它有,它将只显示这个用户名的数据…请各位帮帮我,我会很高兴得到帮助的:)
发布于 2018-12-04 04:16:58
更新PopulateGridView方法以接受如下所示的输入参数:
void PopulateGridView(string searchTerm)
{
DataTable dtbl = new DataTable();
using (OleDbConnection sqlCon = new OleDbConnection(connectionStr))
{
string query = "SELECT * FROM Users";
OleDbCommand sqlCmd = new OleDbCommand(query, sqlCon);
if(!String.IsNullOrWhiteSpace(searchTerm)) {
query+=" WHERE UserName=@UserName";
sqlCmd.CommandText = query;
sqlCmd.Parameters.AddWithValue("@UserName", searchTerm);
}
sqlCon.Open();
OleDbDataAdapter sqlDa = new OleDbDataAdapter(sqlCmd);
sqlDa.Fill(dtbl);
}
if (dtbl.Rows.Count > 0)
{
AdminBook.DataSource = dtbl;
AdminBook.DataBind();
}
else
{
dtbl.Rows.Add(dtbl.NewRow());
AdminBook.DataSource = dtbl;
AdminBook.DataBind();
AdminBook.Rows[0].Cells.Clear();
AdminBook.Rows[0].Cells.Add(new TableCell());
AdminBook.Rows[0].Cells[0].ColumnSpan = dtbl.Columns.Count;
AdminBook.Rows[0].Cells[0].Text = "No Data Found";
AdminBook.Rows[0].Cells[0].HorizontalAlign = HorizontalAlign.Center;
}
}
像这样更新SearchButton_Click方法:
protected void SearchButton_Click(object sender, EventArgs e)
{
PopulateGridView(txtUserNameFooter.Text);
}
https://stackoverflow.com/questions/53599085
复制相似问题