簡體   English   中英

瀏覽器后退按鈕上的gridview和單選按鈕列表

[英]gridview and radio button list on browser back button

在我的aspx頁面上,有一個RadioButtonList,它包含名為“ additions”和“ termination”的列表項。 還有兩個gridview“ GV_addition”和“ GV_termination”。 選擇單選按鈕“添加”后,將顯示網格視圖“ GV_addition”。 選擇項目“終止”時,將顯示網格視圖“ GV_終止”。

在單選按鈕更改事件中,它正常工作。 但是我的問題是,當我單擊瀏覽器后退按鈕時,單選按鈕選擇和相應的網格視圖無法正確顯示。 我遇到問題,選擇單選按鈕“添加”時顯示“ Gv_termination”。 僅當我單擊瀏覽器后退按鈕時,才會顯示此問題。

請找到我下面的代碼

  <asp:RadioButtonList ID="RadioButtonList1" runat="server" 
        onselectedindexchanged="RadioButtonList1_SelectedIndexChanged" AutoPostBack="true">
    <asp:ListItem Text="addition" Value="addition"> </asp:ListItem>
    <asp:ListItem Text="termination" Value="termination"></asp:ListItem>

   protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (RadioButtonList1.SelectedIndex == 0)
        {
            GV_addition.Visible = true;
            GV_termination.Visible = false;
        }
        else
        {
            GV_termination.Visible = true;
            GV_addition.Visible = false;
        }
    }

我不明白為什么為什么單選按鈕選擇和相應的gridview可見性在瀏覽器的后退按鈕事件上不起作用。 誰能幫我解決這個問題?

似乎您沒有創建“默認”方案。 您可以執行此操作,並通過在每個Page_Load上執行類似的操作並將其排除在事件之外,從而將邏輯緊密聯系在一起。

 protected void Page_Load(object sender, EventArgs e)
    {
        GV_addition.Visible = RadioButtonList1.SelectedIndex == 0;
        GV_termination.Visible = RadioButtonList1.SelectedIndex == 1;
    }



protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e)
    {

    }

請嘗試以下步驟。 對我來說,同樣的情況也可行。

我可以看到值正在正確更新,但是更新的單選檢查狀態未更新到UI。 因此,我在主體的Onload事件上使用javacript對其進行了設置。

在主體上添加Onload事件。

<body onload="setRadioButonStatus()">

並添加以下Javascript。

       function setRadioButonStatus() {
            var rbtn1 = document.getElementById('RadioButton1');
            var rbtn2 = document.getElementById('RadioButton2');

            if (rbtn1.hasAttribute("checked"))
                rbtn1.checked = true;
            if (rbtn2.hasAttribute("checked"))
                rbtn2.checked = true;
        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM