我有一个具有三个输入范围的表单,如下所示:
<div class="form-style-5">
<legend><span class="number">4</span> Search by Scholarship Requirements
</legend>
<form action="search3.php" method="post" oninput="amount1.value=rangeInput1.value; amount2.value=rangeInput2.value; amount3.value=rangeInput3.value;" target="_parent">
<fieldset>
Minimum SAT:
<output for="rangeInput" name="amount1">0</output>
<input id="rangeInput1" max="2400" min="0" name="satscore" required="" type="range" value="0">
<br>
<br>
<input name="crm" type="checkbox" value="CR+M">CR+M
<input name="crm" type="checkbox" value="CR+M+W">CR+M+W
<br>
<br>Minimum ACT:
<output for="rangeInput" name="amount2">0</output>
<input id="rangeInput2" max="36" min="0" name="actscore" required="" type="range" value="0">
<br>
<br>Minimum GPA:
<output for="rangeInput" name="amount3">0</output>
<input id="rangeInput3" max="4" min="0" name="gpascore" required="" type="range" value="0">
<br>
</fieldset>
<br>
<input type="submit" value="SEARCH">
</form>
</div>
我的值默认为“0”,但问题是在某些情况下用户会选择三种输入类型中的任何一种,但我需要他们在提交之前至少选择一种。
我已经绞尽脑汁好几个小时了,不知道该怎么做——有人可以帮忙吗?
最佳答案
我的第一个建议是为每个输入提供唯一的名称或类,以便在代码中识别它们(这样您可以单独检查它们,而不是一次全部检查)。然后,创建一个 jQuery 代码片段来处理验证;
$("input[type='submit']").click(function(e){
// Stop the form submitting
e.preventDefault()
if($("input[name='enterFieldNameHere']").val() != '0' || $("input[name='enterFieldNameHere2']").val() != '0' || $("input[name='enterFieldNameHere3']").val() != '0'){
// At least one value isn't 0, submit the form
return true;
}else{
// Tell the user the input is invalid
alert('Please select an option');
}
})
此代码未经测试,仅用于演示该想法。
关于javascript - HTML INPUT RANGE - 禁用提交,直到发生更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35990598/