簡體   English   中英

ASP.NET - 如果頁面是回發,label 不會更新

[英]ASP.NET - If page is postback, label doesn't update

我有一個 MainPage.Master 和另一個 ContentPage.Master ,它使用 MainPage.master 作為其母版頁(我認為它“繼承”了主母版頁?不確定術語..)

在 MainPage.Master.cs 我在 Page_Load 中有代碼,它查詢數據庫並返回一個 int(這是 DataTable 中總行數的計數),每個頁面加載都會更新一個 asp:literal,其中包含一些 html . 這在更改頁面期間工作正常,但在回發時不起作用。

例如,當用戶單擊添加到此 DataTable 的按鈕時,它會被添加但 asp:literal 不會更改,直到我單擊更改頁面的鏈接。

回顧一下; 它添加到 DataTable 但不更新 asp:literal 中的計數。 我認為這與回發有關,但不知道該怎么做..

MasterPage.master.cs 中的代碼:

    protected void Page_Load(object sender, EventArgs e)
{
    if (Session["OrderID"] == null)
    {
        NoItemsInCart.Text = "<span class=\"ajax_cart_no_product\">0 items</span>";
    }
    else
    {
        var itemsincart = Cart.ItemsInCart((int)Session["OrderID"]);
        NoItemsInCart.Text = string.Format("<span class=\"ajax_cart_no_product\">{0} item(s)</span>", itemsincart);
    }
}

因此,當用戶單擊按鈕添加到 DataTable 時,此代碼確實有效,但初始時無效。 當我導航到另一個頁面時,它會更新並顯示正確的數字。

謝謝,

邁克爾

如果您希望在用戶單擊按鈕時更改此設置,請將其添加到事件方法而不是頁面加載中。 這應該對你有用。

暫無
暫無

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

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