1
protected void Page_Load(object sender, EventArgs e)
{
    //skipped
    foreach(pair item in al)  
    {           
        pid.Items.Add(new ListItem(item.getTitle(), item.getId()));

    }  

}

protected void Button1_Click(object sender, EventArgs e) 
{
            insertUser.Parameters.AddWithValue("@parent_id", Convert.ToInt32(pid.SelectedValue));

}

从上面的代码中有一个下拉列表,所有项目都是从 Page_Load 函数添加的,错误是,无论我从下拉列表中选择什么项目,只有第一个项目被添加到数据库中。

有谁知道有什么问题?

谢谢!

4

1 回答 1

2

您不应在回发期间添加项目

尝试

if (!IsPostBack)
{
    foreach(pair item in al)  
    {           
        pid.Items.Add(new ListItem(item.getTitle(), item.getId()));

    }  
}

IsPostBack属性检查页面是第一次呈现还是响应回发。

于 2012-10-19T09:14:09.543 回答