1

在单击 Next 和 Prev html 按钮时,我需要 jquery 选项卡的 Next、Previous 功能。我正在使用jquery.1.9.1.jsjquery-ui-1.10.2.custom.js归档。我已经实现了下面的代码,但对我不起作用。

<script language="javascript" type="text/javascript">
    $(function () {
        $("#ui-tabs").tabs();
        function GetSelectedTabIndex() {
            return $('#ui-tabs').tabs('option', 'selected');
        }

        function ShowTabs(stepNum) {
            var num = parseInt(stepNum);
            $('#ui-tabs').tabs('option', 'active', parseInt(GetSelectedTabIndex()) +  num);
        }

        $('#prev').click(function () {
            ShowTabs(-1);
        })

        $('#next').click(function () {
            ShowTabs(-1);
        })
    });
</script>

<div id="ui-tabs">
    <ul>
        <li><a href="#tabs-1">Nunc tincidunt</a></li>
        <li><a href="#tabs-2">Proin dolor</a></li>
        <li><a href="#tabs-3">Aenean lacinia</a></li>
    </ul>
    <div id="tabs-1">Tab1 content </div>
    <div id="tabs-2">Tab2 content </div>
    <div id="tabs-3">Tab3 content </div>
</div>
<a id="prev" class="button-style" href="#">Prev</a>
&nbsp;<a id="next" class="button-style" href="#">Next</a>

GetSelectedTabIndex返回 null。执行中有什么问题。请建议。

4

3 回答 3

1

这对我有用:

$( "#ui-tabs" ).tabs();

 function GetSelectedTabIndex() {
        return $('#ui-tabs').tabs('option', 'selected');
 }

function ShowTabs(stepNum) {
    var num = parseInt(stepNum);
    $('#ui-tabs').tabs('option', 'active', parseInt(GetSelectedTabIndex()) + num);
}

在我看来,使用该$tabs变量没有意义,因为它是您的GetSelectedTabIndex函数的本地变量,并且每个函数调用只使用一次......

演示:http: //jsfiddle.net/darkajax/A8ejN/

于 2013-04-10T14:03:17.203 回答
0
<script src="jquery-1.5.1.min.js" type="text/javascript"></script>
<script src="jquery-ui.js" type="text/javascript"></script>
<link href="jquery-ui.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
    $(function () {
        $("#ui-tabs").tabs();
    });
    function GetSelectedTabIndex() {
        var $tabs = $('#ui-tabs').tabs();
        var selected = $tabs.tabs('option', 'selected');
        return selected;
    }

    function ShowTabs(stepNum) {
        var num = parseInt(stepNum);
        $('#ui-tabs').tabs('select', parseInt(GetSelectedTabIndex()) + num);
    }
</script>



<div id="ui-tabs">
    <ul>
        <li><a href="#tabs-1">Nunc tincidunt</a></li>
        <li><a href="#tabs-2">Proin dolor</a></li>
        <li><a href="#tabs-3">Aenean lacinia</a></li>
    </ul>
    <div id="tabs-1">
        Tab1 content
    </div>
    <div id="tabs-2" >
        Tab2 content
    </div>
    <div id="tabs-3">
        Tab3 content
    </div>
</div>
于 2013-04-11T04:36:29.023 回答
0

此版本中没有selectjQuery UI 选项卡的方法。要使您的功能正常工作,您需要将代码更改为

var i=$('#ui-tabs').tabs( "option", "active"); //get selected tab index
$('#ui-tabs').tabs( "option", "active", i+num ); // num is your tab choise (+1,-1)

这对我有用。尝试这个。

于 2013-04-16T10:42:14.227 回答