我有一个简单的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时,将自检重置为未选择状态的最佳方法是什么?
答案 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;
});
答案 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”)