jquery tabs postback problem

前端 未结 4 942
囚心锁ツ
囚心锁ツ 2021-02-14 17:42

i am using jquery library in my project.I have terrible problem with jquery tabs.Solutions is that when i was in third tab,i post back my form,tabs reloaded and goes to first t

相关标签:
4条回答
  • 2021-02-14 18:20

    I attempted to use the solution posted by joelsand. However, the jQuery Tabs options and events have changed. The current documentation is at http://api.jqueryui.com/tabs/.

    Instead of the "show" event, I used the "activated" event. Instead of the "selected" option, I used the "active" option. Instead of a hidden field, I used a JavaScript variable (declared outside the UpdatePanel)

    0 讨论(0)
  • 2021-02-14 18:22

    tabs can use cookies to store the current tab. Have a look at the tabs documentation. Down in the Options list there is an example of how to use cookies to store the current tab:

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

    This requires the jquery cookies plugin to be included though.

    0 讨论(0)
  • 2021-02-14 18:23

    I had the same problem, fixed by adding the following to the jquery tabs select event handler:

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

    It effectively clears all existing panels to prevent form stacking.

    0 讨论(0)
  • 2021-02-14 18:37

    You didn't specify if you're using ASP.NET, but if you are you can store the currently selected tab in an <asp:HiddenField /> instead of a cookie:

    <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" />
    

    If not ASP.NET, you could probably do something similar.

    0 讨论(0)
提交回复
热议问题