From 4094f33e2f92db31b70606a57ff25d6e63bc4923 Mon Sep 17 00:00:00 2001 From: maliming Date: Tue, 28 Jun 2022 15:35:11 +0800 Subject: [PATCH] Load tabs only once. --- .../Pages/SettingManagement/Index.cshtml | 7 ++++--- .../Pages/SettingManagement/Index.js | 17 ++++++++++++----- 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.Web/Pages/SettingManagement/Index.cshtml b/modules/setting-management/src/Volo.Abp.SettingManagement.Web/Pages/SettingManagement/Index.cshtml index 3f9c347cc6..9c79489c41 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.Web/Pages/SettingManagement/Index.cshtml +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.Web/Pages/SettingManagement/Index.cshtml @@ -28,14 +28,15 @@ { var group = Model.SettingPageCreationContext.Groups[i]; var active = i == 0 ? "active" : string.Empty; - }
-
+
+
diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.Web/Pages/SettingManagement/Index.js b/modules/setting-management/src/Volo.Abp.SettingManagement.Web/Pages/SettingManagement/Index.js index b7c0c5b32e..813608f28c 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.Web/Pages/SettingManagement/Index.js +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.Web/Pages/SettingManagement/Index.js @@ -1,19 +1,26 @@ (function ($) { var l = abp.localization.getResource('AbpSettingManagement'); - $('#tabs-nav .nav-item').click(function () { - var id = $(this).attr("id") + $('#tabs-nav .nav-item .nav-link').click(function () { + var _this = $(this); + if(_this.attr('data-bs-target') !== undefined) { + return; + } + + var id = _this.attr("id") abp.ui.block({ elm: '#tab-content', busy: true, promise: abp.ajax({ - type: "POST", - url: "SettingManagement?handler=RenderView&id=" + id, + type: 'POST', + url: 'SettingManagement?handler=RenderView&id=' + id, dataType: "html", contentType: false, processData: false }).done(function (response) { - $('#tab-content').html(response); + $('#tab-content').children('.tab-pane').removeClass('show').removeClass('active'); + _this.attr('data-bs-target', '#' + $.escapeSelector($.escapeSelector(id))); + $('#tab-content').append('
' + response + '
'); abp.event.trigger('Abp.SettingManagement.View.Render.' + id); }) });