jquery實現checkbox的單選和全選

來源:互聯網
上載者:User

標籤:img   class   query   log   lis   check   checkbox   count   margin   

一、思路

全選:判斷“全選”checkbox的狀態,如果選中則把tbody下所有的checkbox選中,反之

單選:主要是判斷有沒有全選,如果不是選中狀態就把全選的checkbox狀態設定為false,如果是選中就拿所有選中狀態下“name=id”的chekbox和所有‘’name=id"的數量去比較,如果一樣表示全選了,設定全選的chekbox為選中狀態,反之。

二、代碼

1.css部分,直接搬運的django項目裡面的。

<table border="2" style="margin: 0 auto;text-align: left;width: 800px">        <thead>        <tr>            <th><input type="checkbox" name="all">全選</th>            <th>id</th>            <th>使用者名稱</th>            <th>暱稱</th>            <th>郵箱</th>            <th>角色</th>            <th>操作</th>        </tr>        </thead>        <tbody id="tb">        {% for user in userlist %}            <tr>                <td><input type="checkbox" name="id" value="{{ user.UserID }}" onclick="userCheck(this)"></td>                <td>{{ user.UserID }}</td>                <td>{{ user.Username }}</td>                <td>{{ user.NickName }}</td>                <td>{{ user.Email }}</td>                <td>{{ user.Role.RoleName }}</td>                <td>                    <img id="update" src="/static/img/edit-new.png" onclick="getUser({{ user.UserID }})">                    <img id="delete" src="/static/img/edit_remove.png" onclick="userdelete({{ user.UserID }})">                </td>            </tr>        {% endfor %}        </tbody>    </table>

 

2.js部分,name和id都可以根據實際修改

$(function () {    //全選,設定chheckbox name=‘all‘ tbody id=tb    $("input[name=all]").click(function () {        if (this.checked) {            $("#tb :checkbox").prop("checked", true);        } else {            $("#tb :checkbox").prop("checked", false);        }    });});//單選 設定name=idfunction userCheck(ths) {    if (ths.checked == false) {        $("input[name=all]:checkbox").prop(‘checked‘, false);    }    else {        var count = $("input[name=‘id‘]:checkbox:checked").length;        if (count == $("input[name=‘id‘]:checkbox").length) {            $("input[name=all]:checkbox").prop("checked", true);        }    }}

 

jquery實現checkbox的單選和全選

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.