0

有一个我用jquery和css修饰的形式的收音机。现在我想对它做更多的 jquery,但是当我运行这两个代码时,一旦选择了收音机,li 就不会关闭。一旦你点击无线电位,李应该关闭。还需要告诉它执行以下操作:使用输入 = 名称“radio_selected”进行无线电选择的无线电交换。这样隐藏 li 中的选定收音机将移出隐藏 li 并与页面上未隐藏的收音机交换位置。

    $("input[name='domain_ext']").each(function() {
        $("#radio_select").attr('checked', 'checked');
        var lbl = $(this).parent("label").text();
        if  ($(this).prop('checked')) {
            $(this).hide();
            $(this).after("<div class='radioButtonOn'>" + lbl + "</div>");
        } else { 
            $(this).hide();
            $(this).after("<div class='radioButtonOff'>" + lbl + "</div>");
        }
    });

    $("input[type=radio]").change(function() {
        $(this).siblings('.radioButtonOff').add('.radioButtonOn').toggleClass('radioButtonOff radioButtonOn');
    });



   $('div.ribbonBoxarrow').click(function() {
            $('.ribbonBoxarrow li').show('medium');
            return false;
        });
// once you leave the div (which is contained in the above li hide.
        $('.ribbonBoxtab').mouseleave(function() {
            $('.ribbonBoxarrow li').hide('slow'); //missing .
            return false;
        });
//if a radio buttn is clicked the hide li
        $("input[name='domain_ext']").click(function() { //changed .each to .click
            $('.ribbonBoxarrow li').hide('slow'); //missing .
            return false;
        });
4

1 回答 1

1
$("input[name='domain_ext']").each(function() {
        $("#radio_select").attr('checked', 'checked');
        var lbl = $(this).parent("label").text();
        if  ($(this).prop('checked')) {
            $(this).hide();
            $(this).after("<div class='radioButtonOn'>" + lbl + "</div>");
        } else { 
            $(this).hide();
            $(this).after("<div class='radioButtonOff'>" + lbl + "</div>");
        }
    });

    $("input[type=radio]").change(function() {
        $(this).siblings('.radioButtonOff').add('.radioButtonOn').toggleClass('radioButtonOff radioButtonOn');
    });



   $('div.ribbonBoxarrow').click(function() {
            $('.ribbonBoxarrow li').show('medium');
            return false;
        });
// once you leave the div (which is contained in the above li hide.
        $('.ribbonBoxtab').mouseleave(function() {
            $('.ribbonBoxarrow li').hide('slow'); //missing .
            return false;
        });
//if a radio buttn is clicked the hide li
        $("input[name='domain_ext']").parent('label').click(function() { //changed .each to .click
            $('.ribbonBoxarrow li').hide('slow'); //missing .
            return false;
        });
于 2013-03-15T02:05:55.263 回答