如果我的表单中未选中任何复选框,我想禁用“提交”按钮。但是,我的功能无法正常工作,并且始终允许使用“提交”按钮来打开下一页。
function test(){
var b = false;
var inputs = document.getElementsByTagName('input');
for(var i = 0; i < inputs.length; i++) {
if (inputs[i].checked == true){
return true;
}
}
return false;
}
表格
form name='checkBoxForm' action ='book.php' method='post' onsubmit='return test(this)
复选框-注意javatest是另一个工作功能。
input type='checkbox' id =\"$id\" name='check_list[]' value=\"$seat\" onclick='javatest(this)
答案 0 :(得分:-1)
之所以发生这种情况,是因为您没有停止“提交”按钮的默认操作。您需要将preventDefault()javascript函数用作验证函数的第一行,以停止默认的提交行为。下面是测试的编辑版本:
function test(event){
event.preventDefault()
var b = false;
var inputs = document.getElementsByTagName('input');
....
此外,要提交表单(即,当您找到至少1个选中的复选框时),您将需要使用form.submit事件,如下所示:
document.getElementByTagName("checkBoxForm").submit();
希望这可以解决问题。