关闭slideToggle时如何重置选定的单选按钮?

时间:2013-04-25 17:08:07

标签: jquery radio-button reset slidetoggle

我有一个简单的slideToggle设置,可以在页面上打开div。一些div有自我测试。当div关闭时,我无法弄清楚如何重置单选按钮。这是jQuery:

$("h2.titleTrigger").click(function(e){
e.preventDefault();

//TOGGLE OPEN/CLOSE THE DIV
$(this).toggleClass("active").next().slideToggle("fast");
return false;
});


//self test

$('input:radio').bind('change',function(e){
e.preventDefault();
var parentId = $(this).parents('.selfTest').attr('id');
$('#'+parentId+' .selfTestWrong').addClass('answerShown');
$('#'+parentId+' .selfTestAnswer').slideDown(300);
});

在此处查看:http://jsfiddle.net/3XBgu/

当用户关闭slideToggle时,将自检重置为未选择状态的最佳方法是什么?

2 个答案:

答案 0 :(得分:1)

你可以这样做:

$("h2.titleTrigger").click(function (e) {
    e.preventDefault();

    //TOGGLE OPEN/CLOSE THE DIV
    $(this).toggleClass("active").next().slideToggle("fast");

    // Re-set all the radio buttons
    $('input:radio').prop('checked', false);

    // Re-set all the labels class
    $('.selfTestWrong').removeClass('answerShown');
    return false;
});

FIDDLE

答案 1 :(得分:0)

这解决了您的问题:

//TOGGLE OPEN/CLOSE THE DIV
    $(this).toggleClass("active").next().slideToggle("fast");
    $(".hey").each(function(){
        this.checked = false; 
        $('.selfTestWrong').removeClass('answerShown');
        $('.selfTestAnswer').hide();
    });
return false;
});

(为每个输入添加了class =“hey”)

http://jsfiddle.net/3XBgu/2/