/// <summary>
/// 显示大类
/// </summary>
private void DisplayDL()
{
ddlDL.DataSource = FenLeiManager.GetFenLeiByUid(0);
ddlDL.DataTextField = "BoardCaption";
ddlDL.DataValueField = "uid";
ddlDL.DataBind();
}
/// <summary>
/// 显示中类
/// </summary>
private void DisplayZL()
{
ddlZL.DataSource = FenLeiManager.GetFenLeiByUid(int.Parse(ddlDL.SelectedItem.Value));
ddlZL.DataTextField = "BoardCaption";
ddlZL.DataValueField = "uid";
ddlZL.DataBind();
} /// <summary>
/// 显示小类
/// </summary>
private void DisplayXL()
{
ddlXL.DataSource = FenLeiManager.GetFenLeiByUid(int.Parse(ddlZL.SelectedItem.Value));
ddlXL.DataTextField = "BoardCaption";
ddlXL.DataValueField = "uid";
ddlXL.DataBind();
}
页面3个DropDownList.在什么时候绑定合适?
还有我想第二个DropDownList随第一个DropDownList的内容而改变。第三个随第二个的值改变。
应该怎么写。是不是每个DropDownList都要加AutoPostBack="true".
可能表达的不清楚,效果就是像城市下拉框一样。
/// 显示大类
/// </summary>
private void DisplayDL()
{
ddlDL.DataSource = FenLeiManager.GetFenLeiByUid(0);
ddlDL.DataTextField = "BoardCaption";
ddlDL.DataValueField = "uid";
ddlDL.DataBind();
}
/// <summary>
/// 显示中类
/// </summary>
private void DisplayZL()
{
ddlZL.DataSource = FenLeiManager.GetFenLeiByUid(int.Parse(ddlDL.SelectedItem.Value));
ddlZL.DataTextField = "BoardCaption";
ddlZL.DataValueField = "uid";
ddlZL.DataBind();
} /// <summary>
/// 显示小类
/// </summary>
private void DisplayXL()
{
ddlXL.DataSource = FenLeiManager.GetFenLeiByUid(int.Parse(ddlZL.SelectedItem.Value));
ddlXL.DataTextField = "BoardCaption";
ddlXL.DataValueField = "uid";
ddlXL.DataBind();
}
页面3个DropDownList.在什么时候绑定合适?
还有我想第二个DropDownList随第一个DropDownList的内容而改变。第三个随第二个的值改变。
应该怎么写。是不是每个DropDownList都要加AutoPostBack="true".
可能表达的不清楚,效果就是像城市下拉框一样。
解决方案 »
- 头晕找了两个多小时,这是bug吗?
- 如何动态创建复选框控件
- 哈哈,一些asp.net的MVC的教材真是令人郁闷
- 怎样根据数据库中取出的字段判断画面上按钮是否可用
- 里面有一个vbscript的脚本,请高手帮我改成js的,谢谢啊!
- sql 查询问题 急急急急急急急急急急急急急
- asp.net,c#程序中的如何调试javascript程序段?
- 从。net转到java上容易吗,敬请赐教!
- 动态生成html页面
- 请教:用asp.net编的一个页面的代码中“Assembly”出了问题,怎么解决?
- GRIDVIEW + SqlDataSource 的根据ID删除某行的问题。
- js如何给页面传参数,页面如何接受参数以及从数据库返回数据生成连接
至于绑定,第一个要在page_load里
if(!Page.IsPostBack)
{
//这里绑定
}
其他两个,要在你DropDownList改变后触发修改了
我每个默认的都添加了 ddlDL.Items.Insert(0, new ListItem("请选择", "请选择"));
然后我获取上一次选中的Value值时用
int.Parse(ddlDL.SelectedItem.Value))可以吗?报数组越界
http://blog.csdn.net/Sandy945/archive/2009/06/29/4307710.aspx
2.<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack ="true"
onselectedindexchanged="DropDownList1_SelectedIndexChanged" >
</asp:DropDownList>
后台:
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
BindDropDownList2();
}
3.要加AutoPostBack ="true"
if(!Page.IsPostBack)
{
//这里绑定
} 2.前两个要加AutoPostBack="true",
第一个DropDownList1控件的SelectedIndexChanged事件中绑定第二个和第三个
第二个DropDownList2控件的SelectedIndexChanged事件中绑定第三个如果想不刷新就把这三个控件放在ajax的updatepanel内,(记得加上一个scriptmanager控件)
selectindexChange事件重新绑定就OK的
ddlDL.Items.Insert(0, new ListItem("0","请选择"));
1.在PageLoad()里面绑定即可;
2. <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack ="true"
onselectedindexchanged="DropDownList1_SelectedIndexChanged" >
</asp:DropDownList>
后台:
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
BindDropDownList2();
}
3.要加AutoPostBack ="true"
简单的作法就是在第二个dropdownlist里获取第一个dropdownlist里的value值,然后进行绑定
UpdatePanel工具箱有,但是拖不进?用不了。怎么回事