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实现tab标签浏览效果
Feb 20 Javascript
javascript一个无懈可击的实例化XMLHttpRequest的方法
Oct 13 Javascript
createElement与createDocumentFragment的点点区别小结
Dec 19 Javascript
基于jQuery实现复选框的全选 全不选 反选功能
Nov 24 Javascript
JQuery插入DOM节点的方法
Jun 11 Javascript
分享自己用JS做的扫雷小游戏
Feb 17 Javascript
全面了解javascript中的错误处理机制
Jul 18 Javascript
Angular的$http的ajax的请求操作(推荐)
Jan 10 Javascript
Vue响应式添加、修改数组和对象的值
Mar 20 Javascript
vue指令只能输入正数并且只能输入一个小数点的方法
Jun 08 Javascript
vue 对象添加或删除成员时无法实时更新的解决方法
May 01 Javascript
vue 动态设置img的src地址无效,npm run build 后找不到文件的解决
Jul 26 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
source.php查看源文件
2006/12/09 PHP
php include的妙用,实现路径加密
2008/07/29 PHP
PHP扩展模块Pecl、Pear以及Perl的区别
2014/04/09 PHP
从零开始学YII2框架(六)高级应用程序模板
2014/08/20 PHP
php简单分页类实现方法
2015/02/26 PHP
PHP+JS三级菜单联动菜单实现方法
2016/02/24 PHP
利用laravel搭建一个迷你博客实战教程
2017/08/13 PHP
JS函数重载的解决方案
2014/05/13 Javascript
jquery+ajax实现跨域请求的方法
2015/01/20 Javascript
JS设置网页图片vspace和hspace属性的方法
2015/04/01 Javascript
使用javascript提交form表单方法汇总
2015/06/25 Javascript
jquery捕捉回车键及获取checkbox值与异步请求的方法
2015/12/24 Javascript
react学习笔记之state以及setState的使用
2017/12/07 Javascript
vue中v-cloak解决刷新或者加载出现闪烁问题(显示变量)
2018/04/20 Javascript
webpack打包非模块化js的方法
2018/10/24 Javascript
JS实现的Object数组去重功能示例【数组成员为Object对象】
2019/02/01 Javascript
javascript function(函数类型)使用与注意事项小结
2019/06/10 Javascript
Node.js 在本地生成日志文件的方法
2020/02/07 Javascript
详解JS深拷贝与浅拷贝
2020/08/04 Javascript
Python使用新浪微博API发送微博的例子
2014/04/10 Python
Python做智能家居温湿度报警系统
2018/09/25 Python
Python中类的创建和实例化操作示例
2019/02/27 Python
python 基于dlib库的人脸检测的实现
2019/11/08 Python
pytest fixtures装饰器的使用和如何控制用例的执行顺序
2021/01/28 Python
CSS3实现背景透明文字不透明的示例代码
2018/06/25 HTML / CSS
canvas因为图片资源不在同一域名下而导致的跨域污染画布的解决办法
2019/01/18 HTML / CSS
htmlentities() 和 htmlspecialchars()有什么区别
2015/07/01 面试题
培训协议书范本
2014/04/22 职场文书
幼儿教师演讲稿
2014/05/06 职场文书
建筑工地标语
2014/06/18 职场文书
神农溪导游词
2015/02/11 职场文书
幼儿园个人总结
2015/02/28 职场文书
2015年中秋寄语
2015/07/31 职场文书
浪漫婚礼主持词开场白
2015/11/24 职场文书
vue项目打包后路由错误的解决方法
2022/04/13 Vue.js
服务器nginx权限被拒绝解决案例
2022/09/23 Servers