高分求帮忙做网页的搜索功能asp.net(C#)代码

2024-12-30 00:58:15
推荐回答(3个)
回答1:

我中午都没怎么休息给你写了一个这样的小例子!
怎么给你?还是我都发上来?
我没按照你的做(我做了你就偷懒了...),但是和你的需求一样.1级分类,二级分类,产品.3张表.
道理是一样的.
要例子直接Hi我!

//中午没怎么休息给你写的,分要给我。要不然我太心凉了。
//你要实现一个组合搜索,不一定非要在2个页面,我在这里做到一个页面了。如果你要做到2个页面可以将第二个下拉框的值和文本框的值保存到session,再第二个页面提取出来进行查询
//那几行完全相同的数据库查询代码 你可以抽出一个方法来,重复使用,在这我直接copy的,因为时间紧。
//整个小例子比较简单 不做多解释了。
protected void Page_Load(object sender, EventArgs e)
{
if(!Page.IsPostBack){
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["DatabaseConnectionString"].ConnectionString);
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = "select * from [category1]";
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
//以上几行连接数据库读取数据不解释

this.DropDownList1.DataSource = ds;
this.DropDownList1.DataTextField = "category1Name";
this.DropDownList1.DataValueField = "category1Id";
this.DropDownList1.DataBind();
//设置Dropdownlist显示的字段
}
}

protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["DatabaseConnectionString"].ConnectionString);
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = string.Format("select * from [category2] where category1={0}",this.DropDownList1.SelectedValue.ToString());//按照第一个下拉框选中的值搜索!
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);

this.DropDownList2.DataSource = ds;
this.DropDownList2.DataTextField = "category2Name";
this.DropDownList2.DataValueField = "category2Id";
this.DropDownList2.DataBind();
}
protected void Button1_Click(object sender, EventArgs e)
{
try
{
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["DatabaseConnectionString"].ConnectionString);
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = string.Format("select * from [product] where category2Id={0} and productprice between {1} and {2}", this.DropDownList2.SelectedValue.ToString(), this.TextBox1.Text.ToString(), this.TextBox2.Text.ToString());//根据第二个下拉框的值和文本框的内容组合搜索
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
//以上几行查询数据库不做解释。 程序中出现多次。可抽出来做成一个方法。代码复用!在这我直接copy的。道理一样

this.GridView1.DataSource = ds; //将查询出的结果给gridview展示
this.GridView1.DataBind();
}catch(Exception ep)
{
Response.Write("");
}

}

回答2:

说实话 这中基础的,几十分钟就能搞定的问题 不应该拿到网上来问
我可以手把手的教你怎么做 如果直接给代码 对你也没什么意义
自己想想

回答3:

孩子,还是自己多练习下吧