为何我绑定的dropdownlist每次都要刷新一次页面才可以显示

来源:百度知道 编辑:UC知道 时间:2024/05/14 08:41:05
我直接贴我的代码了,我希望的效果是,每次点击删除分类,就可以直接删除DROPDOWNLIST 中的信息,而不用每次都重新刷新页面.

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindDropList();
}
}

/// <summary>
/// 绑定dropdownlist
/// </summary>
public void BindDropList()
{
DataSet DS=new DataSet();

DS = new database().QueryDataSet("SELECT id,[分类名称],[分类英文名称] FROM [精选案例分类]");
if (DS.Tables[0].Rows.Count > 0)
{
DataTable Dt = DS.Tables[0].Clone();
DataRow DR;
for (int i = 0; i < DS.Tables[0].Rows.Count; i++)
{
DR = Dt.NewRow();
DR["id"] = DS.Tables[0].Rows[i]["id"];
DR["分类名称"] = DS.Tables[0].Rows[i]["分类名称"] + " " + DS.T

因为你是在!IsPostBack中执行的,当然页面反馈刷新的时候不会执行这句了,当你重新刷新页面就会执行这句了,所以只要直接放到Page_Load里就可以了

要实现这种不刷新的效果,需要在前台使用JavaScript对DROPDOWNLIST进行删除操作。如果需要使用C#代码读取数据库的话,就使用AJAX吧,不会刷新整个页面。

那你用Ajax吧

在BindDropList()中DropDownList绑定之前加一句
delClassList.Items.Clear();