0

ドロップダウンの選択値に問題があります。

コードは完全に正常に動作しますが、IE 互換モードを変更すると、ドロップダウンが選択した値を保持せず、最初の項目に戻ってしまい、もう動作させることができません。

サーバー、ファイル、またはIISの構成で何かを変更すると、互換モードを再度変更するまで、すべてが正常に機能します。

選択した値をセッションに入れて保持しようとしましたが、機能しません。私は本当にすべてを試しました、前もって感謝します。

ここに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;
}
4

1 に答える 1

1

ええ、それは骨の折れるバグです。ポストバックが失敗します。

これこの記事を読んで修正してください。

于 2013-10-04T23:14:49.540 に答える