检查至少1个复选框时如何启用提交按钮?
$("input[name='vehicle']"), submitButt = $("input[name='Submit']");
var checkboxes = $("input[name='vehicle']"),
submitButtList = $("#Submit");
checkboxes.click(function() {
submitButt.attr("disabled", !checkboxes.is(":checked"));
if (!checkboxes.is(":checked")) {
submitButtList.addClass("disabled");
} else {
submitButtList.removeClass("disabled");
}
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<input type="checkbox" name="vehicle" value="Bike"> I have a bike<br>
<input type="checkbox" name="vehicle" value="Car"> I have a car<br>
<input type="submit" value="Submit" disabled>
&#13;
答案 0 :(得分:3)
为复选框提供相同的ID,并在复选框上的单击事件上编写javascript代码,如果单击任何一个,则启用/禁用该按钮。
通过给出相同的名称,只能选择其中一个
答案 1 :(得分:1)
以下是JavaScript
解决方案,因为您已标记为Javascript
而非Jquery
function callFunction() {
var checkboxes = document.querySelectorAll('input[type="checkbox"]');
var checkedOne = Array.prototype.slice.call(checkboxes).some(x => x.checked);
document.querySelectorAll('input[type="submit"]')[0].disabled = true;
if (checkedOne) {
document.querySelectorAll('input[type="submit"]')[0].disabled = false;
}
}
<input type="checkbox" name="vehicle" onchange="callFunction()" value="Bike"> I have a bike<br>
<input type="checkbox" name="vehicle" onchange="callFunction()" value="Car"> I have a car<br>
<input type="submit" value="Submit" disabled>
Jquery解决方案:
检查已选中复选框的长度,并使用prop
禁用或启用按钮。
$("input[name='vehicle']").on('change', function() {
$("input[type='submit']").prop('disabled', !$("input[name='vehicle']:checked").length);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<input type="checkbox" name="vehicle" value="Bike"> I have a bike<br>
<input type="checkbox" name="vehicle" value="Car"> I have a car<br>
<input type="submit" value="Submit" disabled>
答案 2 :(得分:1)
试试这可能对您有所帮助
function myFunction() {
if (document.getElementById('bike').checked || document.getElementById('car').checked) {
document.getElementById("btn").disabled = false;
} else {
document.getElementById("btn").disabled = true;
}
}
&#13;
<input id="bike" type="checkbox" onchange="myFunction()" name="vehicle" value="Bike"> I have a bike<br>
<input id="car" type="checkbox" onchange="myFunction()" name="vehicle" value="Car"> I have a car<br>
<input type="submit" id="btn" value="Submit" disabled>
&#13;
答案 3 :(得分:1)
添加名称以提交按钮。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<input type="checkbox" name="vehicle" value="Bike"> I have a bike<br>
<input type="checkbox" name="vehicle" value="Car"> I have a car<br>
<input type="submit" value="Submit" name="Submit" disabled>
答案 4 :(得分:0)
您必须为您的代码添加“名称”属性,以便按预期方式运行代码:
$("input[name='vehicle']"), submitButt = $("input[name='Submit']");
var checkboxes = $("input[name='vehicle']"),
submitButtList = $("#Submit");
checkboxes.click(function() {
submitButt.attr("disabled", !checkboxes.is(":checked"));
if (!checkboxes.is(":checked")) {
submitButtList.addClass("disabled");
} else {
submitButtList.removeClass("disabled");
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<input type="checkbox" name="vehicle" value="Bike"> I have a bike<br>
<input type="checkbox" name="vehicle" value="Car"> I have a car<br>
<input type="submit" name="Submit" value="Submit" disabled>
如果需要,您还可以将enter link description here First answer与普通javascript一起使用,格式较短:
您可以替换:
document.querySelectorAll('input[type="submit"]')[0].disabled = true;
if (checkedOne) {
document.querySelectorAll('input[type="submit"]')[0].disabled = false;
}
使用
document.querySelectorAll('input[type="submit"]')[0].disabled = !checkedOne;
function callFunction() {
var checkboxes = document.querySelectorAll('input[type="checkbox"]');
var checkedOne = Array.prototype.slice.call(checkboxes).some(x => x.checked);
document.querySelectorAll('input[type="submit"]')[0].disabled = !checkedOne;
}
<input type="checkbox" name="vehicle" onchange="callFunction()" value="Bike"> I have a bike<br>
<input type="checkbox" name="vehicle" onchange="callFunction()" value="Car"> I have a car<br>
<input type="submit" value="Submit" disabled>