如何在关闭slideToggle时重置选定的单选按钮?
问题描述:
我有一个简单的slideToggle设置,在页面上打开div。一些divs在其中进行自我测试。当div关闭时,我无法确定如何重置单选按钮。这里是jQuery的:如何在关闭slideToggle时重置选定的单选按钮?
$("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的最佳方式?
答
你可以这样做:
$("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;
});
答
这可以解决你的问题:
//TOGGLE OPEN/CLOSE THE DIV
$(this).toggleClass("active").next().slideToggle("fast");
$(".hey").each(function(){
this.checked = false;
$('.selfTestWrong').removeClass('answerShown');
$('.selfTestAnswer').hide();
});
return false;
});
(由类= “嗨” 到每个输入)
+0
这适用于jsFiddle,但不适用于我的网站:( – danzo 2013-04-25 17:35:35
这完美的作品!我也加了$('。selfTestAnswer')。slideUp(300);重新隐藏答案段落。谢谢! – danzo 2013-04-25 17:34:33
很高兴帮助! – 2013-04-25 17:35:16