مشكلة إعادة النشر لعلامات التبويب jquery

StackOverflow https://stackoverflow.com/questions/600089

  •  03-07-2019
  •  | 
  •  

سؤال

أنا أستخدم مكتبة jquery في مشروعي. أواجه مشكلة فظيعة مع علامات تبويب jquery. الحلول هي أنه عندما كنت في علامة التبويب الثالثة، قمت بنشر النموذج الخاص بي مرة أخرى، وأعيد تحميل علامات التبويب وانتقل إلى علامة التبويب الأولى.أنا أبحث عن حل المشكلة لفترة طويلة.

<script type="text/javascript">
    $(document).ready(function() {
        $("#example > ul").tabs({ remote: true, cache: true });
    });       
</script>

فكيف يمكنني حل هذه المشكلة؟تشك إجاباتك.

هل كانت مفيدة؟

المحلول

يمكن لعلامات التبويب استخدام ملفات تعريف الارتباط لتخزين علامة التبويب الحالية.ألق نظرة على علامات التبويب توثيق.يوجد في قائمة الخيارات مثال لكيفية استخدام ملفات تعريف الارتباط لتخزين علامة التبويب الحالية:

$('.selector').tabs({ cookie: { expires: 30 } });

وهذا يتطلب البرنامج المساعد لملفات تعريف الارتباط jquery ليتم تضمينها بالرغم من ذلك.

نصائح أخرى

لم تحدد ما إذا كنت تستخدم ASP.NET، ولكن إذا كنت تستخدمه، فيمكنك تخزين علامة التبويب المحددة حاليًا في <asp:HiddenField /> بدلاً من ملف تعريف الارتباط:

<script type="text/javascript" language="javascript">
    $(function() {
        $("#example").tabs({
            show: function() {
                var sel = $('#example').tabs('option', 'selected');
                $("#<%= hidLastTab.ClientID %>").val(sel);
            },
            selected: <%= hidLastTab.Value %>
        });
    });
</script>
<asp:HiddenField runat="server" ID="hidLastTab" Value="0" />

إذا لم يكن ASP.NET، فمن المحتمل أن تفعل شيئًا مشابهًا.

لقد حاولت استخدام الحل الذي نشرته joelsand.ومع ذلك، تغيرت خيارات وأحداث علامات تبويب jQuery.الوثائق الحالية في http://api.jqueryui.com/tabs/.

بدلاً من الحدث "show"، استخدمت الحدث "activated".بدلاً من الخيار "المحدد"، استخدمت الخيار "النشط".بدلاً من الحقل المخفي، استخدمت متغير JavaScript (تم الإعلان عنه خارج UpdatePanel)

واجهت نفس المشكلة، وتم إصلاحها عن طريق إضافة ما يلي إلى علامات تبويب jquery حدد معالج الأحداث:

$("div.ui-tabs-panel").html("");

يقوم بمسح جميع اللوحات الموجودة بشكل فعال لمنع تكديس النماذج.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top