我们如何选中或取消选中复选框上的所有单选按钮...如果选中复选框,则所有单选按钮也会被选中,反之亦然..它无法正常工作
<input type="checkbox" id="Check" />SelectAll<br /><input type="radio"/>First<br />
<input type="radio"/>Second<br />
<input type="radio"/>Third<br />
<input type="radio"/>Fourth<br />
<input type="radio"/>Fifth</div>
<script>
var IsCheck = false;
$(document).ready(function () {
$("#Check").change(function () {
if (IsCheck == false) {
$("input[type=radio]").attr("checked", true);
IsCheck == true
}
else { $("input[type=radio]").attr("checked", false); IsCheck == false }
});
}); </script>
答案 0 :(得分:3)
注意你只是比较操作数而不是在这些语句中赋值给变量:
IsCheck == true
^------ REMOVE ONE = so it's an assignment
另外,请勿使用.attr("checked", true);
正确的表格:
$("input[type=radio]").attr("checked", 'checked'); //checking for jQuery < 1.6
取消选中:
$("input[type=radio]").removeAttr("checked"); //unchecking for jQuery < 1.6
如果您使用的是jQuery&gt; 1.6你可以使用带有布尔值的.prop()
方法,这与你尝试使用它的方式类似:
$("input[type=radio]").prop("checked", true); //checking for jQuery >= 1.6
$("input[type=radio]").prop("checked", false); //unchecking for jQuery >= 1.6
答案 1 :(得分:2)
对于jQuery 1.9或更高版本使用
$('input[type=radio]').prop("checked", true)
否则尝试
$('input[type=radio]').attr('checked', 'checked');
答案 2 :(得分:1)
试试这个
$(document).ready(function () {
$("#Check").change(function () {
$("input[type=radio]").attr("checked", $("#Check").is(":checked"));
});
});
答案 3 :(得分:1)
对于你的问题,这可能是答案:
$("#Check").change(function () {
$("input:radio").prop("checked", this.checked);
});
演示:http://jsfiddle.net/hungerpain/QSx29/
也就是说,单选按钮不是最好的方法。它不是语义权利。您只能在一个组中选择一个单选按钮。请尝试使用复选框。试着改变你的标记:
<input type="checkbox" id="Check" />SelectAll
<br />
<input type="checkbox" />First
<br />
<input type="checkbox" />Second
<br />
<input type="checkbox" />Third
<br />
<input type="checkbox" />Fourth
<br />
<input type="checkbox" />Fifth</div>
将JS代码替换为:
$("#Check").change(function () {
$("input:checkbox").prop("checked", this.checked);
});
答案 4 :(得分:1)
你只需要这个
$("#Check").change(function () {
$("input[type=radio]").prop("checked", this.checked);
});
演示---->
http://jsfiddle.net/kLnyD/
答案 5 :(得分:0)
试试这个
$("#Check").change(function () {
if ($(this).is(':checked')) {
$("input[type=radio]").prop("checked", true);
}
else { $("input[type=radio]").prop("checked", false); }
});