在asp.net的更新面板内部的回发中维护Jquery选中的选项卡

时间:2016-03-31 03:37:16

标签: c# jquery asp.net

我在更新面板中有一个jquery选项卡到目前为止这个代码就是我正在使用的

使用Javascript:

findOne(example:Schema)

ASPX:

var selected_tab = 1;
$(function () {
    var tabs = $("#tabs").tabs({
        select: function (e, i) {
            selected_tab = i.index;
        }
    });
    selected_tab = $("[id$=selected_tab]").val() != "" ? parseInt($("[id$=selected_tab]").val()) : 0;
    tabs.tabs('select', selected_tab);
    $("form").submit(function () {
        $("[id$=selected_tab]").val(selected_tab);
    });
});

CS:

<div id="tabs">
<ul>
    <li><a href="#tabs-1">Tab 1</a></li>
    <li><a href="#tabs-2">Tab 2</a></li>
    <li><a href="#tabs-3">Tab 3</a></li>
</ul>
<div id="tabs-1">
    Content 1
</div>
<div id="tabs-2">
    Content 2
</div>
<div id="tabs-3">
    Content 3
</div>

每次页面刷新时,所选标签都会返回标签1.请提前帮助我。

1 个答案:

答案 0 :(得分:0)

请尝试以下操作,在页面末尾写下以下脚本

<script type="text/javascript">
    // below will execute after ajax postback
    Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);

    function EndRequestHandler(sender, args) {
        MyScript();
    }

    function MyScript() {
        var selected_tab = 1;
        var tabs = $("#tabs").tabs({
            select: function (e, i) {
                selected_tab = i.index;
            }
        });
        selected_tab = $("[id$=selected_tab]").val() != "" ? parseInt($("[id$=selected_tab]").val()) : 0;
        tabs.tabs('select', selected_tab);
        $("form").submit(function () {
            $("[id$=selected_tab]").val(selected_tab);
        });
    }
</script>