jquery prop()方法 解决全选 不全选 反选 问题 解决执行一次不不能再执行问题
- //1、如果通过prop()函数更改<input>和<button>元素的type属性,在多数浏览器上将会抛出一个错误,因为该属性一般不允许在后期更改。
//如果使用prop()函数操作表单元素的checked、selected、disabled等属性,如果该元素被选中(或禁用),则返回true,否则(意即HTML中没有该属性)返回false。
//3、prop()函数还可以设置或返回DOM元素的Element对象上的某些属性,例如:tagName、selectedIndex、nodeName、nodeType、ownerDocument、defaultChecked和defaultSelected等属性。
//在IE9及更早版本中,如果使用prop()函数设置的属性值不是一个简单的原始值(String、Number、Boolean),并且在对应的DOM元素被销毁之前,该属性没有被移除,则可能会导致内存泄漏问题。如果你只是为了存储数据,建议你使用data()函数,以避免内存泄漏问题。
- <script>
- $(function () {
- $("#j_cbAll").click(function () {
- //如果全选按钮被选中 则所有按钮军被选中 上面有prop用法 用prop()方法解决执行一次之后不能再全选问题
- $("#j_tb :checkbox").prop("checked", $(this).prop("checked"));
- });
- $("#j_tb :checkbox").click(function () {
- singleClick();
- });
- $("#fanxuan").click(function () {
- $("#j_tb :checkbox").each(function () {
- //反选
- $(this).prop("checked", !$(this).prop("checked"));
- singleClick();
- });
- });
- // 如果有一个子的checkbox没有选中,全选不选中 如果子的checkbox都选中了,全选选中
- function singleClick(){
- //如果子元素没有被选中 全选不选中
- if(!$("#j_tb :checkbox").checked){
- $("#j_cbAll").prop("checked",false);
- }
- //checkbox的个数
- var chsub = $("#j_tb :checkbox").length;
- //checkbox选中的个数
- var checkedsub = $("#j_tb :checkbox:checked").length;
//判断选择个数与所有个数是否相同- if (checkedsub === chsub) {
//全选按钮被选中- $("#j_cbAll").prop("checked", true);
- };
- }
- });
- </script>
- <!DOCTYPE html>
- <html>
- <head lang="en">
- <meta charset="UTF-8">
- <title></title>
- <style>
- * {
- padding: 0;
- margin: 0;
- }
- .wrap {
- width: 300px;
- margin: 100px auto 0;
- }
- table {
- border-collapse: collapse;
- border-spacing: 0;
- border: 1px solid #c0c0c0;
- width: 300px;
- }
- th,
- td {
- border: 1px solid #d0d0d0;
- color: #404060;
- padding: 10px;
- }
- th {
- background-color: #09c;
- font: bold 16px "微软雅黑";
- color: #fff;
- }
- td {
- font: 14px "微软雅黑";
- }
- tbody tr {
- background-color: #f0f0f0;
- }
- tbody tr:hover {
- cursor: pointer;
- background-color: #fafafa;
- }
- </style>
- <script src="../js/jquery-1.12.4.js"></script>
- </head>
- <body>
- <div class="wrap">
- <table>
- <thead>
- <tr>
- <th>
- <input type="checkbox" id="j_cbAll" />
- </th>
- <th>菜名</th>
- <th>饭店</th>
- </tr>
- </thead>
- <tbody id="j_tb">
- <tr>
- <td>
- <input type="checkbox" name="checkbox" />
- </td>
- <td>红烧肉</td>
- <td>田老师</td>
- </tr>
- <tr>
- <td>
- <input type="checkbox" name="checkbox" />
- </td>
- <td>西红柿鸡蛋</td>
- <td>田老师</td>
- </tr>
- <tr>
- <td>
- <input type="checkbox" name="checkbox" />
- </td>
- <td>红烧狮子头</td>
- <td>田老师</td>
- </tr>
- <tr>
- <td>
- <input type="checkbox" name="checkbox" />
- </td>
- <td>日式肥牛</td>
- <td>田老师</td>
- </tr>
- <tr>
- <td id="fanxuan">反选</td>
- </tr>
- </tbody>
- </table>
- </div>
- </body>
- </html>
jquery prop()方法 解决全选 不全选 反选 问题 解决执行一次不不能再执行问题的更多相关文章
- jQuery prop方法替代attr方法
jquery attr()方法获取标签的 checked 会有问题,所以用了 prop() 方法.
- jquery全选 不全选
<input type="checkbox" id="check">点击 <input type="checkbox" c ...
- jQuery prop() 方法
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- jquery实现全选、取消反选、加JavaScript三元运算(三种法法实现反选)
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- jquery中attr方法和prop方法的区别
关于checked的属性,最重要的概念就是你要记住,它跟checked的状态值是毫无关系的,设置checked = "checked"或者checked = "true& ...
- jquery attr()和prop()方法的区别
$('').attr()返回的是html对象 $('').prop()返回的是DOM对象 attr(): attr() 方法设置或返回被选元素的属性和值. 当该方法用于返回属性值,则返回第一个匹配元素 ...
- JQuery常见方法
<!DOCTYPE htmi> <html> <head> <meta charset="UTF-8"> <title> ...
- js prop方法
添加和删除属性 $("button").click(function(){ var $x = $("div"); <!--添加属性--> $x.pr ...
- jquery操作checkbox方法(全选、全不选、至少选择一个、选择值/文本)
原文:http://blog.csdn.net/u014079773/article/details/52371382 在实际开发中我们经常操作checkbox,不仅仅要获得checkbox选中的值, ...
随机推荐
- H面试程序(29):求最大递增数
要求:求最大递增数 如:1231123451 输出12345 #include<stdio.h> #include<assert.h> void find(char *s) { ...
- ajax跨域请求的方案
$.get("@Hosts.Default.Www/api/XXXXX/Getxxx/"+@Model.UserId, function(data) { $("#tota ...
- chrome可以登陆账号的hosts文件
原文地址: 百度 chrome吧 http://zhidao.baidu.com/question/1818688600091435508.html?qq-pf-to=pcqq.group http: ...
- 【Daily】 2014-4-23
KEEP GOING Think more product when face difference Check value null when insert/remove/update/add ch ...
- oracle 物化视图导入导出报错
1.exp导出报EXP-00008: 遇到 ORACLE 错误 1455,ORA-01455: 转换列溢出整数数据类型 2.imp导入报.注: 表包括 ROWID 列, 其值可能已废弃,不是警告也不是 ...
- kindeditor更改图片上传时网络图片的路径
当我们想要使用kindeditor的图片上传功能时,有两种选择图片方式,一种是本地选择,一种是在图片空间中选择,图片空间的默认地址是server上的/kindeditor/attached/image ...
- mybatisnet轻量级ORM框架
https://code.google.com/p/mybatisnet/source/checkout http://blog.csdn.net/arvinstudy/article/details ...
- uva 10051 Tower of Cubes(DAG最长路)
题目连接:10051 - Tower of Cubes 题目大意:有n个正方体,从序号1~n, 对应的每个立方体的6个面分别有它的颜色(用数字给出),现在想要将立方体堆成塔,并且上面的立方体的序号要小 ...
- Nutch的发展历程
Nutch的创始人是Doug Cutting,他同时也是Lucene.Hadoop和Avro开源项目的创始人 下面是Nutch的发展历程: 月由Doug Cutting发起,托管于Sourceforg ...
- Cannot create JDBC driver of class '' for connect URL 'jdbc:mysql://127.0.0.1:3306/test'
原来的配置如下: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http ...