jQuery基于复选框前进到选项卡

时间:2014-01-28 20:47:59

标签: jquery jquery-ui jquery-tabs

我正在尝试根据是否选中复选框,使jQuery选项卡转到某个选项卡。我用来推进一个标签的代码是:

$("#tabs").tabs();
$(".nexttab").click(function() {
    var selected = $("#tabs").tabs("option", "selected");

    $("#tabs").tabs("option", "selected", selected + 1);
});

然后我用它来检查是否选中了某个复选框并相应地前进到下一个标签。

$("#tabs").tabs();
$(".nexttab").click(function() {
    var selected = $("#tabs").tabs("option", "selected"); 

    if($("#fragment-2 input[type='checkbox'][name='1 inch Pump with Meter(includes Hose and Nozzle)']").is(':checked')){
        $("#tabs").tabs("option", "selected", selected + 3);

    }   
    else {
        $("#tabs").tabs("option", "selected", selected + 1);
    }
});

这很好用。但是,在点击链接之后,我希望它返回到前进1.我的代码的方式是继续前进3.如何将我的链接重置为1?如果您需要更多信息,请与我们联系。感谢。

1 个答案:

答案 0 :(得分:0)

因此,如果我理解正确,那么你要求如果单击泵选项卡上的下一个选项卡链接,如果有问题的选项被点击则它应该前进3,否则它应该像所有其他下一个选项卡一样前进1链接。如果是这样的话我会改变html来识别下一个标签链接,方法是在泵面板上给它一个像fragment2next这样的id,以便我可以隔离该链接的事件。然后在事件处理程序中,如果单击链接并且选择的选项前进3,否则前进1。

$("#tabs").tabs();
$(".nexttab").click(function() {
    var selected = $("#tabs").tabs("option", "selected");
    if($("#fragment-2 input[type='checkbox'][name='1 inch Pump with Meter(includes Hose and Nozzle)']").is(':checked') && ($(this).attr('id') == 'fragment2next')){
            $("#tabs").tabs("option", "selected", selected + 3);            
        }   
        else {
            $("#tabs").tabs("option", "selected", selected + 1);
        }
});
    });

这是指向更新的jsfiddle http://jsfiddle.net/LE4EM/5/

的链接