0

我有一个非常简单的表格,我希望用户能够回答每个问题,如果答案有一个子问题,子问题将在检查适当的答案时显示..我没有得到这个工作...

   <script>
    $(document).ready(function(){

            $(".sub-question").hide();

            var yes = document.getElementById("#Q4A1");


            if(yes.checked){
                    $(".sub-question").show(200);
            }
    });
    </script>

目前,我的yes.checked情况出现“空”参考错误。

<div class="question-content">
<span>Example text example text</span>
<form id="question-04">
<label><input type="radio" name="question-04" value="yes"  id="Q4A1"> Yes</label><br>
<label><input type="radio" name="question-04" value="no"> No</label>
</form>
<div class="sub-question">
<div class="sub-question-content">
<span>Aliquam erat volutpat. Quisque facilisis non mauris non malesuada. Duis in accumsan metus. Ut eget nulla neque?</span>
<form id="subquestion-04">
<label><input type="radio" name="question-04" value="yes"> Yes</label><br>
<label><input type="radio" name="question-04" value="no"> No</label>
</form>
</div>

</div>
</div>

如果答案是肯定的,我想做的就是显示“子问题”。如果可能的话,我宁愿不显式地引用输入元素,而是引用表单元素,以防万一“否”有子问题。我想让它尽可能动态。感谢您的帮助!

4

1 回答 1

1

这是一个工作的jsfiddle

您需要收听按钮收音机上的更改事件。

$(document).ready(function(){

        $(".sub-question").hide();
        $("#Q4A1").change(function () {
             $(".sub-question").show(200);
        });
});

当然,您可能需要对其进行修改以满足您的需要,但您明白了。您可以只使用 javascript 来监听单选按钮上的更改事件,并在需要时向您显示子问题。

如果你想用“否”的答案做同样的事情,很容易扩展它,但我让你这样做,这就是编程很有趣的原因。

于 2013-10-08T19:20:07.713 回答