.net DropDownList在IE中回传后丢失值

我对dropDown的选定值有问题。

代码工作得很好,除了当我改变IE兼容模式时,下拉不会保留选定的值并返回到第一项,我不能再使它工作了。

当我更改服务器上的某些内容,IIS中的文件或配置时,一切正常,直到我再次更改de兼容性模式。

我试着把选定的值放在会话中以保持它,但它不工作。 我真的尝试了一切,事先感谢。

这里是asp代码:

  <asp:DropDownList ID="ddlFiltre" runat="server" AutoPostBack="True" EnableViewState="true" Width="100%" OnSelectedIndexChanged="ddlFiltre_SelectedIndexChanged">
                </asp:DropDownList>

这是后面的代码:

protected void Page_Load(object sender, EventArgs e)
{
  }
protected void Page_PreRender(object sender, EventArgs e)
{
    if (!Page.IsPostBack)
    {
        ddlFiltre.Items.Clear();
        ddlFiltre.Items.Add(new ListItem(GetLibelle("item1"), "-1"));
        ddlFiltre.Items.Add(new ListItem(GetLibelle("item2"), "0"));
        ddlFiltre.Items.Add(new ListItem(GetLibelle("item3"), "1"));
        ddlFiltre.Items.Add(new ListItem(GetLibelle("item4"), "2"));
        GetPermission();

    }
    else
    {

        ddlFiltre.SelectedValue = Session["ddl_index"].ToString();
    }



    LoadPageControls();


}



private void GetPermission()
{

}

private void LoadPageControls()
{
    if (LoggedUser != null)
    {


        if (ddlFiltre.SelectedValue == "-1")
        {
            // Load info in table
        }
        else
        {
            // Load other info in table
        }



    }
}


protected void ddlFiltre_SelectedIndexChanged(object sender, EventArgs e)
{
    Session["ddl_index"] = ddlFiltre.SelectedValue;
}

是的,这是一个骨骼错误。 回传失败。

阅读本文和本文以获得修复。

链接地址: http://www.djcxy.com/p/67237.html

上一篇: .net dropDownList losing value after postback in IE

下一篇: DropDownlist Selected Index changed not working in IE10