如何创建" next"使用Java Script和Twitter Bootstrap切换选项卡的按钮

时间:2012-08-09 06:52:59

标签: javascript html button twitter-bootstrap

我有以下代码:http://jsfiddle.net/h6rQ2/2/

我正在使用html来创建基本表单。此表单有两个部分 - 每个部分都包含在一个选项卡中(使用Twitter Bootstrap创建的选项卡)。

如何创建从第一个标签切换到第二个标签的“下一个”按钮?当我现在尝试这样做时,它只提交表格。 Twitter Bootstrap是否已经提供了一个允许您通过外部按钮切换标签的功能?如果是这样,你如何使用它?

3 个答案:

答案 0 :(得分:28)

鉴于这些按钮:

<div class="btn-group">
    <button class="btn" id="prevtab" type="button">Prev</button>
    <button class="btn" id="nexttab" type="button">Next</button>
</div>

你需要这个JS:

var $tabs = $('.tabbable li');

$('#prevtab').on('click', function() {
    $tabs.filter('.active').prev('li').find('a[data-toggle="tab"]').tab('show');
});

$('#nexttab').on('click', function() {
    $tabs.filter('.active').next('li').find('a[data-toggle="tab"]').tab('show');
});

Working demo (jsfiddle)

答案 1 :(得分:0)

要使其循环(最后一个标签转到第一个,第一个标签转到最后),这是我的代码:

function previousVin(){
    var previousElement = $('#myTab li').filter('.active').prev('li').find('a[data-toggle="tab"]');
    if(previousElement.html()===undefined){
        $('#myTab a:last').tab('show');
    }else{
        previousElement.tab('show');
    }
}
function nextVin(){
    var nextElement = $('#myTab li').filter('.active').next('li').find('a[data-toggle="tab"]');
    if(nextElement.html()===undefined){
        $('#myTab a:first').tab('show');
    }else{
        nextElement.tab('show');
    }
}

答案 2 :(得分:-1)

对于bootstrap 3

$('a[data-toggle^="tab"]').click(function(){
    var data = $(this).attr("href");
    $('a[data-toggle^="tab"]').parent("li").removeClass("active");
    $('li a[href^="'+data+'"]').parent("li").addClass("active");
    $('.tab-pane').removeClass("active");
    $(data).addClass("active");
})

您可以随处添加这些链接

<a href="#tabname2" data-toggle="tab">Next</a>
<a href="#tabname1" data-toggle="tab">Previous</a>