jquery全选全不选 jquery全选全不选反选的实现

jQuery实现全选与全不选功能

在网页开发中,我们经常会遇到需要实现全选和全不选功能的需求,这种需求通常出现在表格的表头,用户可以通过点击表头的复选框来控制整行数据的选中状态,本文将介绍如何使用jQuery来实现这一功能。

我们需要在HTML中创建一个表格,并在表头添加一个复选框,代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>jQuery全选全不选示例</title>
    <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
</head>
<body>
    <table border="1">
        <thead>
            <tr>
                <th><input type="checkbox" class="select-all"></th>
                <th>姓名</th>
                <th>年龄</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td><input type="checkbox"></td>
                <td>张三</td>
                <td>25</td>
            </tr>
            <tr>
                <td><input type="checkbox"></td>
                <td>李四</td>
                <td>30</td>
            </tr>
            <tr>
                <td><input type="checkbox"></td>
                <td>王五</td>
                <td>35</td>
            </tr>
        </tbody>
    </table>
    <script src="main.js"></script>
</body>
</html>

接下来,我们需要编写JavaScript代码来实现全选和全不选功能,我们需要为表头的复选框绑定点击事件,当用户点击表头的复选框时,我们将遍历表格的所有行,并根据表头复选框的状态来设置每一行的选中状态,代码如下:

$(document).ready(function () {
    $(".select-all").click(function () {
        if ($(this).is(":checked")) {
            $("input[type='checkbox']").prop("checked", true);
        } else {
            $("input[type='checkbox']").prop("checked", false);
        }
    });
});

在上面的代码中,我们使用了jQuery的$函数来选择所有的复选框,并使用prop方法来设置它们的选中状态,当用户点击表头的复选框时,我们将遍历表格的所有行,并根据表头复选框的状态来设置每一行的选中状态,如果表头复选框被选中,我们将遍历所有行,并将它们的选中状态设置为true;否则,我们将遍历所有行,并将它们的选中状态设置为false

至此,我们已经实现了使用jQuery实现全选和全不选功能,用户可以点击表头的复选框来控制整行数据的选中状态,这种方法简单易用,适用于大多数表格数据操作场景。