簡體   English   中英

如何在asp.net按鈕事件后保持標簽處於活動狀態?

[英]How to keep a tab active after asp.net button event?

我想知道如何在按鈕回發事件后保持選項卡打開,但我無法使用 HiddenFields 使其正常工作。 我希望第二個選項卡在第二個選項卡上單擊按鈕后保持打開狀態,但是我的代碼將始終刷新到第一個選項卡。

我還嘗試使用更新面板而不是刷新整個頁面,但是使用此方法無法正確切換選項卡。

我不希望每次點擊標簽時都回發,因為它會影響用戶體驗。 有沒有其他代碼可以在不影響褪色美感的情況下做到這一點?

 $(function () { $('.tab-content:first-child').show(); $('.tab-nav').bind('click', function (e) { $this = $(this); $tabs = $this.parent().parent().next(); $target = $($this.data("target")); $this.siblings().removeClass('active'); $target.siblings().css("display", "none"); $this.addClass('active'); $target.fadeIn("slow"); }); $('.tab-nav:first-child').trigger('click'); });
 <ul class="tabs-nav d-flex" style="padding-left: 35px;"> <li class="tab-nav d-flex justify-content-center align-items-center" data-target="#tab_1">Overview</li> <li class="tab-nav d-flex justify-content-center align-items-center" data-target="#tab_2">Expenses</li> </ul> <div id="tab_1" class="tab-content"> <p>abc</p> </div> <div id="tab_2" class="tab-content"> <p>abc</p> <asp:Button ID="saveexpense" runat="server" Text="Save"/> </div>

您最好創建一個 Web 方法並從您的 jQuery 調用它,而不是嘗試使用更新面板進行某些操作。 特別是考慮到更新面板可能導致的性能問題。

您可以將保存功能移動到這樣的網絡方法中

[WebMethod]
public static void SaveExpense(string data, string moredata)
{
    //your save code here
}

在你的前端有類似的東西

<button id="saveexpense">Save</button>

然后你可以像這樣調用你的 webmethod

$('#saveexpense').click(function () {
    $.ajax({
        type: "POST",
        url: "CurrentPage.aspx/SaveExpense",
        data: JSON.stringify({ data: $("#textbox").val(), moredata: $("#textbox2").val() }) ,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function () {
            console.log("data saved");
        },
        error: function (jXHR, textStatus, err) {
            console.log(err);
        }
    });
});

暫無
暫無

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

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