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 相关文章推荐
showModelessDialog()使用详解
Sep 21 Javascript
jQuery-serialize()输出序列化form表单值的方法
Dec 26 Javascript
js算法中的排序、数组去重详细概述
Oct 14 Javascript
JQuery获取或设置ckeditor的数据(示例代码)
Nov 15 Javascript
javascript面向对象特性代码实例
Jun 12 Javascript
深入理解JavaScript系列(30):设计模式之外观模式详解
Mar 03 Javascript
AngularJS 模块化详解及实例代码
Sep 14 Javascript
jquery判断类型是不是number类型的实例代码
Oct 07 Javascript
简单易懂的天气插件(代码分享)
Feb 04 Javascript
Vue自定义弹窗指令的实现代码
Aug 13 Javascript
Vue作用域插槽slot-scope实例代码
Sep 05 Javascript
angular共享依赖的解决方案分享
Oct 15 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
批量获取memcache值并按key的顺序返回的实现代码
2011/06/14 PHP
第4章 数据处理-php数组的处理-郑阿奇
2011/07/04 PHP
PHP简洁函数(PHP简单明了函数语法)
2012/06/10 PHP
php自动加载autoload机制示例分享
2014/02/20 PHP
PHP curl使用实例
2015/07/02 PHP
thinkPHP查询方式小结
2016/01/09 PHP
CodeIgniter控制器之业务逻辑实例分析
2016/01/20 PHP
Django中通过定时任务触发页面静态化的处理方式
2018/08/29 PHP
js 图片轮播(5张图片)
2008/12/30 Javascript
jQuery把表单元素变为json对象
2013/11/06 Javascript
jquery sortable的拖动方法示例详解
2014/01/16 Javascript
JavaScript获得页面base标签中url的方法
2015/04/03 Javascript
jQuery实现动态表单验证时文本框抖动效果完整实例
2015/08/21 Javascript
深入解析桶排序算法及Node.js上JavaScript的代码实现
2016/07/06 Javascript
js倒计时简单实现代码
2016/08/11 Javascript
jQuery Ajax使用FormData对象上传文件的方法
2016/09/07 Javascript
ES6概念 ymbol.for()方法
2016/12/25 Javascript
分享19个JavaScript 有用的简写写法
2017/07/07 Javascript
合并百度影音的离线数据( with python 2.3)
2015/08/04 Python
python中安装模块包版本冲突问题的解决
2017/05/02 Python
django 2.0更新的10条注意事项总结
2018/01/05 Python
Python零基础入门学习之输入与输出
2019/04/03 Python
Python基于内置库pytesseract实现图片验证码识别功能
2020/02/24 Python
Django中ORM找出内容不为空的数据实例
2020/05/20 Python
Django跨域请求原理及实现代码
2020/11/14 Python
python字典与json转换的方法总结
2020/12/28 Python
matplotlib相关系统目录获取方式小结
2021/02/03 Python
CSS3 实现的缩略图悬停效果
2020/12/09 HTML / CSS
HTML5 Canvas鼠标与键盘事件demo示例
2013/07/04 HTML / CSS
美国紧身牛仔裤品牌:NYDJ
2017/05/24 全球购物
欢迎领导标语
2014/06/27 职场文书
运输企业安全生产责任书
2014/07/28 职场文书
公司委托书格式范文
2014/10/09 职场文书
优秀班主任推荐材料
2014/12/17 职场文书
2015年药品销售工作总结范文
2015/05/25 职场文书
Win11 PC上的Outlook搜索错误怎么办?
2022/07/15 数码科技