JQuery 处理复选框问题
来源:互联网 发布:mac wine 安装 编辑:程序博客网 时间:2024/06/01 20:10
JQuery 解决复选框问题
用JQuery解决问题,首先就是要下载jQuery插件,下载地址: 点击打开链接
JQuery插件下载完之后,引入到你的HTML文件中,就可以开始用JQuery,来解决问题了。
因为是针对简单常用的复选框问题,所以我写了几个比较简单的复选框(只为了实现功能并达到讲解的效果),关于复选框,我大概定义为 一个 父类复选框(全选),和众多子复选框(点击全选而联动的复选框),我通过定义name来区别他们,你们也可以定义别的,以下是我的简略代码:
<body><input type="checkbox" name="fu">全选(父)<br><input type="checkbox" name="zi">子1<br><input type="checkbox" name="zi">子2<br><input type="checkbox" name="zi">子3<</body>
上面只涉及到HTML的知识,全选之类的实现,需要用到JQuery,请看下面(比较重要)
1.全选 和 全不选问题
从字面意思上来看,就是点击一个特殊的复选框,通过点击事件,来实现其他复选框的是否选中的状态,如果你能理解到这里,说明你离成功不算远了。
怎么才能满足用代码来充实你的想法呢,我提供给你我的一些想法:
$(document).ready(function () { $("input[name='fu']").click(function () { var a=$("input[name='fu']").length; var b=$("input[name='fu']:checked").length; if (a==b){ $(":checkbox[name='zi']").prop("checked", true); }else { $(":checkbox[name='zi']").prop("checked", false); } }); });
设置 每个子复选框 的name 都为 “zi”,然后设置唯一的全选的复选框的name 为“fu”,然后在文件加载完,这个大前提下,设置全选框的点击事件
设置 a为 父类复选框的长度, b为父类复选框是选中状态的长度,因为父类复选框只有一个,所以其实就是为了判断 全选框是否被选中,所以 之后我判断如果 全选框选中了 ,那么 我把所有子类的复选框的状态,设置为选中的状态 。 如果全选框没有选中,那么就把 子复选框 的状态设置为不选中状态, 注意: 我的一系列判断,全部在点击全选框的条件之下。所以,和其他条件下不冲突。
2. 反选(点击全部的子复选框,选中全选框),和 全选状态 下 点击 子类复选框,取消全选框的选中状态。
这两个我为什么可以总结到这里一起写? 当然是有原因的, 因为他们都涉及到了 点击子类复选框的事件。其实,这两个功能,和全选、全不选,有异曲同工之妙,为什么这么说,请看实现这两个功能的代码:
$(document).ready(function () { $("input[name='zi']").click(function () { var a=$("input[name='zi']").length; var b=$("input[name='zi']:checked").length; if(a>b){ $(":checkbox[name='fu']").prop("checked", false); } else if(a==b){ $(":checkbox[name='fu']").prop("checked", true); } }); });
细心的朋友可以看出来,这两个功能,我也是通过点击事件,不过是对子类复选框的点击事件来写的, 分别得到子复选框的数量,和被选中的子复选框的数量, 我把子复选框的name设置成为一致的,是因为想简单使用jQuery,也是因为每次点击子复选框都可以执行查询 长度 的效果, 看吧 ,虽然简单,但是很有效。写到这里,复选框的常用功能,算是写完了。下面是我的完整代码,大家如果没看懂的话,可以参考一下:
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>复选框Demo</title> <script src="jquery-1.9.1.js"></script> <script> $(document).ready(function () { $("input[name='zi']").click(function () { var a=$("input[name='zi']").length; var b=$("input[name='zi']:checked").length; if(a>b){ $(":checkbox[name='fu']").prop("checked", false); } else if(a==b){ $(":checkbox[name='fu']").prop("checked", true); } }); $("input[name='fu']").click(function () { var a=$("input[name='fu']").length; var b=$("input[name='fu']:checked").length; if (a==b){ $(":checkbox[name='zi']").prop("checked", true); }else { $(":checkbox[name='zi']").prop("checked", false); } }); }); </script></head><body><input type="checkbox" name="fu">全选(父)<br><input type="checkbox" name="zi">子1<br><input type="checkbox" name="zi">子2<br><input type="checkbox" name="zi">子3</body></html>
以上方法jQuery语句的排布,只适用于静态界面,如果变成了动态添加复选框界面,那么点击子复选框所触发的事件将不能执行。
解决办法参看以下代码:
else { for (i = 0; i < data.length; i++) { var btn = $(""); $("#xx").append(btn); } $("input[name='zi']").click(function () { var a=$("input[name='zi']").length; var b=$("input[name='zi']:checked").length; if(a>b){ $(":checkbox[name='fu']").prop("checked", false); } if (a==b){ $(":checkbox[name='fu']").prop("checked", true); } }); }就是将 子复选框的点击事件,加入到 ajax 里面的 对后台返回数据遍历的外面。 父类复选框的点击事件 可以直接放在 ajax外面,没有什么影响。
因为我也是新手,有什么说的不恰当的地方还请朋友们批评指正
希望能帮助到有需要的朋友。
阅读全文
1 0
- JQuery 处理复选框问题
- jQuery 处理复选框
- jquery 处理 CheckBox复选框
- jquery 复选框选中问题
- Jquery 和关于 复选框 的问题
- jquery:获取checked复选框的问题
- 【jQuery】复选框的批量处理:全选、非全选
- 【功能代码】---1.通过Jquery来处理复选框
- jquery复选框
- jQuery之复选框
- Jquery获取复选框
- jquery 选中复选框
- jquery操作复选框
- jquery复选框实例
- jquery中的复选框
- jquery复选框练习
- Jquery操作复选框
- jquery控制复选框
- PHP+Apache+MySQL配置过程
- 高精度乘法--速度较快
- SQLite初识(三)数据库升级
- Java 接收邮件(解码技术和附件接收)
- webservice java模拟请求返回中文乱码解决
- JQuery 处理复选框问题
- mongodb update详解
- Android Timeout waiting to lock daemon addresses registry问题
- 两个游戏 (2)
- vector扩容2倍与1.5倍
- 面试题1
- c++常见面试题-C/C++程序内存分配情况
- 利用redis设计锁
- jQuery on()方法给动态生成的元素绑定事件----实战分析
原创粉丝点击
热门IT博客
热门问题
老师的惩罚
人脸识别
我在镇武司摸鱼那些年
重生之率土为王
我在大康的咸鱼生活
盘龙之生命进化
天生仙种
凡人之先天五行
春回大明朝
姑娘不必设防,我是瞎子
农行网银过期怎么办
学生怎么办双币信用卡
信用卡逾期20天怎么办
支付宝余额冻结怎么办
支付宝余额不足怎么办
qq账户余额受限怎么办
支付宝账单不对怎么办
支付宝余额被盗怎么办
转账转错银行怎么办
银行卡号忘记了怎么办
农行卡锁住了怎么办
建行卡渠道锁定怎么办
登录密码被锁定怎么办
ci86密码已锁定怎么办
银行卡丢了钱怎么办
手机丢了银行卡怎么办
银行卡弄丢了怎么办
16岁学生怎么办银行卡
初中生写作业慢怎么办
招行卡片异常怎么办
厦门e通卡丢了怎么办
手机网络信号差怎么办
农行卡短信欠费怎么办
手机银行换号码怎么办
k金会变色怎么办
欢乐豆没了怎么办
三无白户怎么办信用卡
银行卡账号忘了怎么办
办信用卡没座机怎么办
公积金本子丢了怎么办
银行卡丢了怎么办挂失
异地农行卡丢失怎么办
建行银行卡丢了怎么办
投资卡丢了怎么办
借钱买车的怎么办
我想办张信用卡怎么办
银行白户怎么办信用卡
白户怎么办信用卡技巧
农行k宝没电了怎么办
u盾丢了怎么办
企业网银盾丢失怎么办