需要单选按钮的答案才能转到HTML中的下一页

时间:2017-02-15 00:49:21

标签: html radio-button

我想确保主题在我的在线调查中回答我的单选按钮问题,以便能够转到下一页。如果他们没有回答,我希望有一条弹出消息,上面写着“请回答问题。”

这是我的代码,我想提出要求:

class PersonHandler(Handler):
    """ Handler class to add a person to a datastore.
    """
    datastore = Instance(Datastore)

    def close(self, info, is_ok):
        if is_ok:
            print('adding to datastore')
            self.datastore.add(info.object)
        else:
            print('not added')
        return super(PersonHandler, self).close(info, is_ok)

谢谢!

2 个答案:

答案 0 :(得分:0)

您只需要为radiogroup的一个输入设置required-attribute,但您可以为所有输入设置。

例如:



<form>
  <label for="input1">1:</label>
  <input type="radio" name="myradiogroup1" id="input1" value="1" required><br>

  <label for="input2">2:</label>
  <input type="radio" name="myradiogroup1" id="input2" value="2"><br>

  <label for="input3">3:</label>
  <input type="radio" name="myradiogroup1" id="input3" value="3"><br>

  <input type="submit" value="send">
</form>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

备选方案1。通过添加checked,您可以在打开页面时默认选中其中一个,这样就可以了:

<div class="radio">
<label><input name="Q1Answer" type="radio" value="Y" checked/>Yes</label>
</div>

或......

备选方案2。在next()函数的第一行添加此行: 如果你使用jQuery:

if (!$('input[name=Q1Answer]:checked').length) return;

当没有选中单选按钮时,它会阻止next()函数继续执行。

<强>更新 对不起,我忘记了你想要弹出一条消息。所以只需添加:

if (!$('input[name=Q1Answer]:checked').length) {
     alert("Please answer the question.");
     return;
}

更新2: 如果你不使用jQuery,这是纯粹的javascript解决方案:

只需将if条件更改为:

if (!document.querySelectorAll('input[name=Q1Answer]:checked').length) {
     alert("Please answer the question.");
     return;
}