在提交之前验证所需答案是否有响应

时间:2015-08-11 20:19:50

标签: javascript html

我正在使用Amazon Mechanical Turk模板创建调查(HIT),并希望调查问题。我在调查模板中有三组单选按钮,我希望在提交表单之前将其全部填写完毕。我需要有关验证语法的帮助。

这是我的一组单选按钮:

<div class="radio">
    <label><strong><input name="ABCD Test" type="radio" value="1" /></strong>Yes</label>
</div>

<div class="radio">
    <label><input name="ABCD Test" type="radio" value="2" />No</label>
</div>

<div class="radio">
    <label><input name="ABCD Test" type="radio" value="3" />Not sure</label>
</div>

我在堆栈溢出时发现了下面的代码,但我正在努力解决如何在上面的特定单选按钮上使用它的语法。在提交之前,有人可以帮助使用语法来验证是否通过单选按钮进行了选择吗?

<script type='text/javascript'>
    window.onload = function() {
        document.getElementById('submitButton').setAttribute('onclick', 'return validateForm()');
    }

    function validateForm() {
        if (validate) {
            return true;
        }
        else {
            return false;
        }
    }
</script>

2 个答案:

答案 0 :(得分:0)

如果需要,可以将required添加到输入标记

<强>前

<input name="ABCD Test" type="radio" value="1" />

<强>后

<strong><input name="ABCD Test" type="radio" value="1" required/>

请参阅小提琴https://jsfiddle.net/DIRTY_SMITH/5mmag01c/

答案 1 :(得分:0)

jsFiddle:http://jsfiddle.net/mkxat4db/

(function () {
    document.getElementById('submitButton').onclick = validateForm;
    function validateForm() {
       var radios = document.querySelectorAll("input:checked");
        if (radios.length === 0) {
            alert("select one please");
            return false;
        }
        else {
            return true;
        }       
    }
})();