0

我有一个包含几个复选框的表单,当这些复选框被选中时,相应的选项卡下面有一个部分是未隐藏的。不幸的是,当我选中第二个或第三个框时,会出现正确的选项卡,但属于第一个选项卡的部分不会被它隐藏。我在 JSFiddle 中有一个例子:http: //jsfiddle.net/j08691/HyMBD/2/。如果您选中外联网访问框,则会出现使用协议 (US 531) 部分。这是我用来取消隐藏选项卡和部分的代码:

//hide/show UA Section
        $("#use-agreement-required").click(function() {
            if ($("#use-agreement-required").is(":checked"))
            {
                $(".UASection").show("fast");
            } else {
                //otherwise hide it
                $(".UASection").hide("fast");
            }

        });

        //hide/show Extranet Section
        $("#extranet-access").click(function() {
            if ($("#extranet-access").is(":checked"))
            {
                //show hidden class
                $(".extranetSection").show("fast");

            } else {
                //otherwise hide it
                $(".extranetSection").hide("fast");
            }

        });

        //hide/show Move It Section
        $("#move-it-access").click(function() {
            if ($("#move-it-access").is(":checked"))
            {
                //show hidden class
                $(".moveItSection").show("fast");

            } else {
                //otherwise hide it
                $(".moveItSection").hide("fast");
            }

        });

        //Refresh tabs
        $("#use-agreement-required,#extranet-access,#move-it-access").click(function () {
            $("#contractTypes").tabs("refresh");
        });
4

2 回答 2

4

你确定标签是你想要在那里做的吗?从 UI 的角度来看,我认为您正走在一条混乱的道路上。

话虽如此,仅显示选项卡还不够,您需要告诉选项卡控件您正在激活一个新选项卡:

$( "#contractTypes" ).tabs({ active: 1 });

请记住,索引是从 0 开始的。

于 2013-07-18T20:55:45.650 回答
0

这弄乱了你的代码..deleted,一切都好

//Refresh tabs
$("#use-agreement-required,#extranet-access,#move-it-access").click(function () {
    $("#contractTypes").tabs("refresh");
});

http://jsfiddle.net/HyMBD/5/

于 2013-07-18T21:02:07.060 回答