这种情况下if(!ispostback){}中该怎么写
有两个dropdownlist,第二个绑定的数据库表是根据第一个的选择而定的,所以第二个的绑定代码是写在DropDownList1_SelectedIndexChange...
有两个dropdownlist,第二个绑定的数据库表是根据第一个的选择而定的,所以第二个的绑定代码是写在DropDownList1_SelectedIndexChanged事件中的,那么if(!ispostback){}中该怎么写,不写的话点提交时第二个dropdownlist的选择就无效了
展开
5个回答
展开全部
你在if(!ispostback){}中的话把两个数据表分别在两个DropDownList中读取出来,你要做的是把DropDownList1_SelectedIndexChanged中传个参数给在DropDownList2,两个数据表要有索引。不知道你明白我的意思了不,利用传参数实现你的功能,如果你还不清楚,我可以给你例子,但两个数据表之间的列名要有索引关系。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你是不是想实现DropDownList1显示第一级内容
DropDownList2里显示第二及内容
你看一下这个例子给你做参考
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//帮定省
SqlConnection myconn = DB.createConn();
myconn.Open();
SqlCommand myCommand = new SqlCommand("select * from province",myconn);
SqlDataReader sdr = myCommand.ExecuteReader();
this.DropDownList1.DataSource = sdr;
this.DropDownList1.DataValueField = "prov_id";
this.DropDownList1.DataTextField = "prov_name";
this.DropDownList1.DataBind();
sdr.Close();
//帮定市
SqlCommand myCommand1 = new SqlCommand("select * from city where prov_id='"+this.DropDownList1.SelectedValue+"'",myconn);
SqlDataReader sdr1 = myCommand1.ExecuteReader();
this.DropDownList2.DataSource = sdr1;
this.DropDownList2.DataValueField = "city_id";
this.DropDownList2.DataTextField = "city_name";
this.DropDownList2.DataBind();
sdr1.Close();
myconn.Close();
}
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
SqlConnection myconn = DB.createConn();
myconn.Open();
SqlCommand myCommand1 = new SqlCommand("select * from city where prov_id='" + this.DropDownList1.SelectedValue + "'", myconn);
SqlDataReader sdr1 = myCommand1.ExecuteReader();
this.DropDownList2.DataSource = sdr1;
this.DropDownList2.DataValueField = "city_id";
this.DropDownList2.DataTextField = "city_name";
this.DropDownList2.DataBind();
sdr1.Close();
myconn.Close();
}
DropDownList2里显示第二及内容
你看一下这个例子给你做参考
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//帮定省
SqlConnection myconn = DB.createConn();
myconn.Open();
SqlCommand myCommand = new SqlCommand("select * from province",myconn);
SqlDataReader sdr = myCommand.ExecuteReader();
this.DropDownList1.DataSource = sdr;
this.DropDownList1.DataValueField = "prov_id";
this.DropDownList1.DataTextField = "prov_name";
this.DropDownList1.DataBind();
sdr.Close();
//帮定市
SqlCommand myCommand1 = new SqlCommand("select * from city where prov_id='"+this.DropDownList1.SelectedValue+"'",myconn);
SqlDataReader sdr1 = myCommand1.ExecuteReader();
this.DropDownList2.DataSource = sdr1;
this.DropDownList2.DataValueField = "city_id";
this.DropDownList2.DataTextField = "city_name";
this.DropDownList2.DataBind();
sdr1.Close();
myconn.Close();
}
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
SqlConnection myconn = DB.createConn();
myconn.Open();
SqlCommand myCommand1 = new SqlCommand("select * from city where prov_id='" + this.DropDownList1.SelectedValue + "'", myconn);
SqlDataReader sdr1 = myCommand1.ExecuteReader();
this.DropDownList2.DataSource = sdr1;
this.DropDownList2.DataValueField = "city_id";
this.DropDownList2.DataTextField = "city_name";
this.DropDownList2.DataBind();
sdr1.Close();
myconn.Close();
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
if(!ispostback)中只需要将第一个dropdownlist的值绑定了就可以了.
而你的第二个dropdownlist的值是在第一个的selectedindexchanged事件中改变的.
而你的第二个dropdownlist的值是在第一个的selectedindexchanged事件中改变的.
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在page_load里面写这句呢?然后再在两国DropDownList里面写两个数据表的索引
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
----<b>引用:</b>回答者:分类名人 分类上升达人 贰壹肆伍捌 - 大魔法师 九级 ----------------------
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询