关闭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时,将自检重置为未选择状态的最佳方法是什么?
你可以这样做:
$("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; });
(为每个输入添加了class =“hey”)