如果用户单击“全选”按钮,我只想选中页面上的所有复选框。
在正文中:
<button id="checkall">Select All</button>
jQuery:
<head>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('#checkall').click(function () {
$("input[type=checkbox]").each( function() {
$(this).attr('checked', true);
});
});
</script>
</head>
复选框是由一些 php 生成的:
echo '<li>';
echo '<input type="checkbox" name="checkbox[]" value="'.$x.'" />'.$x.'<br/>';
echo '</li>';
谁能告诉我我做错了什么?
最佳答案
您不需要 each 语句。只需选中所有复选框并设置属性 checked = true
。
$(document).ready(function(){
$('#checkall').click(function () {
$("input:checkbox").prop('checked', true);
});
});
备注jQuery.prop()是添加到 1.6 及更高版本的功能。如果您使用的是 1.6 之前的 jQuery 版本,则需要以下内容。
$(document).ready(function(){
$('#checkall').click(function () {
$("input:checkbox").attr('checked','checked');
});
});
关于javascript - 使用 jQuery 选择所有复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7502104/