4个不同的元素,相似的功能

4 different elements, similar function

我是 JQuery 的新手,我正在尝试了解如何对 JQuery 中的不同元素使用类似的功能。

输入单选按钮,

函数 *_check()、*_UNcheck() 做同样的事情,但针对不同的元素。

如何简化JQuery代码:

$('.A').click(function () {
    if ($("#A_a").hasClass("un_check") && $("#B_b").hasClass("un_check")) {
        A_check();
    } else if ($("#A_a").hasClass("un_check") && $("#B_b").hasClass("check")) {
        A_check();

        B_UNcheck();
    };
});
$('.B').click(function () {
    if ($("#A_a").hasClass("un_check") && $("#B_b").hasClass("un_check")) {
        B_check();
    } else if ($("#A_a").hasClass("check") && $("#B_b").hasClass("un_check")) {
        B_check();

        A_UNcheck();
    };
});

//------------------------------------------------------------------------------
function A_check() {
    $("#A_a").removeClass("_hover");
    $("#A_a").addClass("_check");

    $("#A").prop("checked", true);
    $("#B").prop("checked", false);

    $("#A_a").removeClass("un_check").addClass("check");
};
function A_UNcheck() {
    $("#A_a").removeClass("_check");

    $("#A_a").removeClass("check").addClass("un_check");
};
function B_check() {
    $("#B_b").removeClass("_hover");
    $("#B_b").addClass("_check");

    $("#A").prop("checked", false);
    $("#B").prop("checked", true);

    $("#B_b").removeClass("un_check").addClass("check");
};
function B_UNcheck() {
    $("#B_b").removeClass("_check");

    $("#B_b").removeClass("check").addClass("un_check");
};

希望对您有所帮助:

$('.A').click(function () {
        check("A_a", "A", "B");
        unCheck("B_b");
});
$('.B').click(function () {
        check("B_b", "B", "A");
        unCheck("A_a");
});

function check(firstId, secondId, thirdId){
    $("#"+firstId).removeClass("_hover");
    $("#"+firstId).addClass("_check");

    $("#"+secondId).prop("checked", true);
    $("#"+thirdId).prop("checked", false);

    $("#"+firstId).removeClass("un_check").addClass("check");
}

function unCheck(firstId) {
    $("#"+firstId).removeClass("_check");
    $("#"+firstId).removeClass("check").addClass("un_check");
};

谢谢