jquery 页面全选框实践代码


Posted in Javascript onApril 02, 2010
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
<title>全选</title> 
</head> 
<body> 
<div>demo 
<input type="button" onclick="alert(ob.checkedIds());" value="选中ID"/> 
<input type="button" onclick="alert(ob.checkedTexts());" value="选中值"/> 
<input type="button" onclick="alert(ob.checkedKeys('value1'));" value="选中属性值"/> 
</div> 
<table class="infor"> 
<tr> 
<th><input name="allcheck" id="allcheck1" type="checkbox" value="1"/> 
全选</th> 
</tr><tr> 
<td><input name="record" type="checkbox" value="1" value1="11"/>去 
</td></tr><tr> 
<td><input name="record" type="checkbox" value="2" value1="22"/>啊 
</td></tr><tr> 
<td><input name="record" type="checkbox" value="3" value1="33"/>我 
</td></tr><tr> 
<td><input name="record" type="checkbox" value="4" value1="44"/>饿 
</td></tr> 
</table> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> 
<script type="text/javascript" > 
//http://www.cnblogs.com/libsource 
(function($){ 
$.allcheck=function(options){ 
_defaults = { 
allcheckid:"allcheck", 
checkboxname:'record' 
}; 
o = $.extend(_defaults,options); 
_allck=$("#"+o.allcheckid); 
_tbl=_allck.parents("table"); 
//返回所有选中checkbox的id集合 
checkedIds=function () { 
var ids = ""; 
$("input[name=" + o.checkboxname + "]").each(function() { 
if ($(this).attr("checked")) 
ids += $(this).val() + ","; 
}); 
return ids.replace(/,$/,''); 
} 
//返回所有选中checkbox的key属性集合 
checkedKeys=function (key) { 
var ids = ""; 
$("input[name=" + o.checkboxname + "]").each(function() { 
if ($(this).attr("checked")) 
ids += $(this).attr(key) + ","; 
}); 
return ids.replace(/,$/,''); 
} 
//返回所有选中checkbox的文本集合 
checkedTexts=function () { 
var txts = ""; 
$("input[name=" + o.checkboxname + "]").each(function() { 
if ($(this).attr("checked")) 
txts += gtrim($(this).parent().text()) + ","; 
}); 
return txts.replace(/,$/,''); 
} 
gtrim=function (txt) { 
return txt.replace(/(^\s*)|(\s*$)/g, ""); 
} 
//设置所有选中checkbox的id集合 
setCheckedIds=function (checkids) { 
checkids = ","+checkids+","; 
$("input[name=" + o.checkboxname + "]").each(function() { 
if (checkids.match(","+$(this).val()+",")) 
$(this).attr("checked","checked"); 
}); 
} 
//检查所有checkbox是否全选 
_checkAll=function () { 
if (this.checked && $("input:checkbox:not([checked]):not(#" + o.allcheckid + ")", _tbl).length == 0) 
_allck[0].checked = true; 
else 
_allck[0].checked = false; 
} //全选checkbox状态 
_setAllChecked=function () { 
if (!this.checked) 
$("input:checkbox", _tbl).removeAttr("checked"); 
else 
$("input:checkbox", _tbl).not(this).attr("checked", "checked"); 
} 
_allck.click(_setAllChecked); 
$("input:checkbox[name="+o.checkboxname+"]").each(function(){$(this).click(_checkAll);}); 
return {checkedIds:checkedIds,checkedKeys:checkedKeys,checkedTexts:checkedTexts,setCheckedIds:setCheckedIds}; 
}; 
})(jQuery); 
</script> 
<script type="text/javascript"> 
var ob=$.allcheck({allcheckid:'allcheck1'}); 
//设置选项allcheckid checkboxname 
//取返回值可以调用checkedIds,checkedKeys,checkedTexts 
</script> 
</body> 
</html>
Javascript 相关文章推荐
基于jQuery的判断iPad、iPhone、Android是横屏还是竖屏的代码
May 11 Javascript
Egret引擎开发指南之视觉编程
Sep 03 Javascript
介绍一个简单的JavaScript类框架
Jun 24 Javascript
Angularjs的ng-repeat中去除重复数据的方法
Aug 05 Javascript
jQuery扩展+xml实现表单验证功能的方法
Dec 25 Javascript
jQuery插件FusionCharts实现的MSBar2D图效果示例【附demo源码】
Mar 24 jQuery
简单实现js拖拽效果
Jul 25 Javascript
Angular4学习笔记之准备和环境搭建项目
Aug 01 Javascript
微信小程序页面生命周期详解
Jan 31 Javascript
详解使用vue-admin-template的优化历程
May 20 Javascript
使用vue.js在页面内组件监听scroll事件的方法
Sep 11 Javascript
Vue中的v-for指令不起效果的解决方法
Sep 27 Javascript
jQuery 自动增长的文本输入框实现代码
Apr 02 #Javascript
jquery select下拉框操作的一些说明
Apr 02 #Javascript
纯JavaScript实现的完美渐变弹出层效果代码
Apr 02 #Javascript
AJAX使用了UpdatePanel后无法使用alert弹出脚本
Apr 02 #Javascript
获取焦点时,利用js定时器设定时间执行动作
Apr 02 #Javascript
Javascript 类与静态类的实现(续)
Apr 02 #Javascript
用js实现计算加载页面所用的时间
Apr 02 #Javascript
You might like
php 分库分表hash算法
2009/11/12 PHP
php 仿Comsenz安装效果代码打包提供下载
2010/05/09 PHP
根据ip调用新浪api获取城市名并转成拼音
2014/03/07 PHP
WordPress中&quot;无法将上传的文件移动至&quot;错误的解决方法
2015/07/01 PHP
php ajax异步读取rss文档数据
2016/03/29 PHP
PHP数据的提交与过滤基本操作实例详解
2016/11/11 PHP
用PHP做了一个领取优惠券活动的示例代码
2019/07/05 PHP
改进UCHOME的记录发布,增强可访问性用户体验
2011/01/17 Javascript
基于jquery的二级联动菜单实现代码
2011/04/25 Javascript
jquery中交替点击事件的实现代码
2014/02/14 Javascript
网站内容禁止复制和粘贴、另存为的js代码
2014/02/26 Javascript
我的NodeJs学习小结(一)
2014/07/06 NodeJs
Bootstrap网格系统详解
2016/04/26 Javascript
学习vue.js条件渲染
2016/12/03 Javascript
jQuery滚动监听实现商城楼梯式导航效果
2017/03/06 Javascript
基于AngularJS的简单使用详解
2017/09/10 Javascript
通过 JS 判断页面是否有滚动条的实现方法
2018/04/05 Javascript
详解JSON Web Token 入门教程
2018/07/30 Javascript
vue2.0的虚拟DOM渲染思路分析
2018/08/09 Javascript
详解ES6 Fetch API HTTP请求实用指南
2018/11/14 Javascript
在Python中使用HTML模版的教程
2015/04/29 Python
Python实现的三层BP神经网络算法示例
2018/02/07 Python
python实现逆序输出一个数字的示例讲解
2018/06/25 Python
Pandas统计重复的列里面的值方法
2019/01/30 Python
python绘制直方图和密度图的实例
2019/07/08 Python
python中rc1什么意思
2020/06/19 Python
Python 通过爬虫实现GitHub网页的模拟登录的示例代码
2020/08/17 Python
如何在vscode中安装python库的方法步骤
2021/01/06 Python
Woolworth官网:澳洲第一大超市
2017/06/25 全球购物
澳大利亚在线划船、露营和钓鱼商店:BCF Australia
2020/03/22 全球购物
如何查询Oracle数据库中已经创建的索引
2013/10/11 面试题
售房协议书
2014/08/19 职场文书
买房协议书范本
2014/10/23 职场文书
扬州个园导游词
2015/02/06 职场文书
2015年幼师个人工作总结
2015/10/15 职场文书
nginx proxy_cache 缓存配置详解
2021/03/31 Servers