如何重置问卷'no'

How to reset questionnaire on 'no'

本文关键字:no 何重置      更新时间:2023-09-26

我试图建立一个问卷,显示下一个问题后,前一个回答。我设法让它工作,但当"否"被按下时,我希望问卷重新设置为该答案,并删除所有后面的问题,以便您可以从该点重新开始。现在,当我按下"不"的时候,我的形式就会变得疯狂,我的头脑无法控制它。有人能帮我一下吗?

HTML:

<p>1. Question 1</p>
<label><input class="toggler" id="radio1" type="radio" name="toggler" value="1" /> Yes</label>
<label><input class="toggler" id="radio2" type="radio" name="toggler" value="2" /> No</label>
<div id="blk-1" style="display:none"><!-- 1. Choice: Yes -->
<p>1. Question 2</p>
<label><input class="toggler" id="radio1" type="radio" name="toggler2" value="3" /> Yes</label>
<label><input class="toggler" id="radio2" type="radio" name="toggler2" value="4" /> No</label>
</div><!-- /blk-1 -->
<div id="blk-2" class="toHide" style="display:none"><!-- 1. Choice: No -->
No
</div><!-- /blk-2 -->
<div id="blk-3" style="display:none"><!-- 2. Choice: Yes -->
<p>3. Question 3</p>
<label><input class="toggler" id="radio1" type="radio" name="toggler3" value="5" /> Yes</label>
<label><input class="toggler" id="radio2" type="radio" name="toggler3" value="6" /> No</label>
</div><!-- /blk-3 -->
<div id="blk-4" class="toHide" style="display:none"><!-- 2. Choice: No -->
No
</div><!-- /blk-4 -->
<div id="blk-5" class="toHide" style="display:none"><!-- 3. Choice: Yes -->
Yes - End
</div><!-- /blk-4 -->
<div id="blk-6" class="toHide" style="display:none"><!-- 3. Choice: No -->
No - End
</div><!-- /blk-4 -->
Javascript:

<script type="text/javascript">
        $(document).ready(function() {
    $(function() {
        $(".toggler").click(function() {
            $('.toHide').hide();
            $("#blk-" + $(this).val()).toggle();
        });
    });
});
</script>
操纵:

http://jsfiddle.net/ximmo/94Vjn/2/

我已经更新了你的小提琴,看看这个小提琴..

jQuery

    $(".toggler").click(function() {
        $('.toHide').hide();
        if($(this).attr("id") == "radio2"){
            var selector = $(this).parents("div").next("div");
            while(selector.length == 1){
                selector.hide();
                selector.find(".toggler").prop("checked",false);
                selector = selector.next("div");
            }
        }
        $("#blk-" + $(this).val()).toggle();
    });