js 分页全选或反选标识实现代码


Posted in Javascript onAugust 09, 2011

注:对多选按钮操作。
1:批量全选添加、批量移除。
2:行单选添加、移除。
3:分页之后(全选或不选)状态标识依然存在

/* *****>****>tr单选事件 
------------------------------------------------------------------------------------*/ 
$("#ajaxshowmdqhList tbody tr").live("click",function(){ 
sx_tr_Value($(this),false,""); 
}); 
/* 筛选重复值 
------------------------------------------------------------------------------------*/ 
var cgdd_id_List=""; 
var array=new Array(); 
var is_add_id=true; 
var sx_tr_Value=function(obj,all_checked,ck_value) 
{ 
cgdd_id_List = $("#hfselectitemid").val(); 
if(!$(obj).find("input").attr("checked")) 
{ 
$(obj).find("input").attr("checked","checked"); 
array=$("#hfselectitemid").val().split(":"); 
for(var i=0;i<array.length;i++) 
{ 
if(array[i]==$(obj).attr("id")) 
{ 
is_add_id=false; 
} 
} 
if(is_add_id) 
{ 
cgdd_id_List +=$(obj).attr("id")+":"; 
} 
} 
else 
{ 
$(obj).find("input").attr("checked",false); 
array=cgdd_id_List.split(":"); 
cgdd_id_List=""; 
for(var i=0;i<array.length;i++) 
{ 
if(array[i]!=$(obj).attr("id")&&array[i]!="") 
{ 
cgdd_id_List +=array[i]+":"; 
} 
} 
} 
$("#hfselectitemid").val(cgdd_id_List); 
array = SortArr($("#hfselectitemid").val());// 排序 
cgdd_id_List=""; 
for(var k=0;k<array.length;k++) 
{ 
if(array[k]!=""&&array[k]!=":") 
{ 
cgdd_id_List+=array[k]+":"; 
} 
} 
$("#hfselectitemid").val(cgdd_id_List); 
alert($("#hfselectitemid").val()); 
} 
/* ***>****>[全选/全不选事件] 
------------------------------------------------------------------------------------*/ 
$("#ajaxshowmdqhList input[name=cgdd_checked_all]").live("click",function(){ 
var ck=$(this).attr("checked"); 
var is_add_ckItem=false;// 是否添加到已选择id集合中 
var all_ck_item = new Array(); // 已选择ID集合 
var not_all_ck_item=new Array();// 反选ID集合 
all_ck_item = $("#hfselectitemid").val().split(":"); 
$("input[name=cg_state]").each(function(){ 
$(this).attr("checked",ck); 
});// 结束 
cgdd_id_List=""; 
$("#ajaxshowmdqhList tbody tr").find("input").each(function(i){ 
if($(this).attr("checked"))// 全选添加ID 
{ 
for(var i = 0; i<all_ck_item.length; i++) 
{ 
if(all_ck_item[i]==$(this).attr("id")) 
{ 
is_add_ckItem=true; 
break; 
} 
} 
if(!is_add_ckItem) 
{ 
cgdd_id_List += $(this).attr("id")+":"; 
} 
is_add_ckItem = false; 
} 
else // 反选ID 
{ 
not_all_ck_item[i]=$(this).attr("id"); 
} 
});// 结束 
// 移除反选ID 
for(var i = 0; i<all_ck_item.length; i++) 
{ 
for(var k = 0; k<not_all_ck_item.length; k++) 
{ 
if(all_ck_item[i]==not_all_ck_item[k]) 
{ 
is_add_ckItem=true; 
break; 
} 
} 
if(!is_add_ckItem) 
{ 
if(all_ck_item[i]!=":"&&all_ck_item[i]!="") 
{ 
cgdd_id_List += all_ck_item[i]+":"; 
} 
} 
is_add_ckItem = false; 
} 
$("#hfselectitemid").val(cgdd_id_List); 
var Sort_array = new Array(); 
Sort_array = SortArr($("#hfselectitemid").val());// 排序 
cgdd_id_List=""; 
for(var k=0;k<Sort_array.length;k++) 
{ 
if(Sort_array[k]!=""&&Sort_array[k]!=":") 
{ 
cgdd_id_List+=Sort_array[k]+":"; 
} 
} 
$("#hfselectitemid").val(cgdd_id_List); 
cgdd_id_List= ""; 
alert($("#hfselectitemid").val()); 
});// 结束 
/* 冒泡排序 
------------------------------------------------------------------------------------*/ 
var SortArr=function(id_list) 
{ 
var sortArray=new Array(); 
var temp; 
sortArray=id_list.split(":"); 
for(var i=0;i<sortArray.length;i++) 
{ 
for(var j=0;j<i;j++) 
{ 
if(parseInt(sortArray[j])>parseInt(sortArray[i])) 
{ 
temp=sortArray[j]; 
sortArray[j]=sortArray[i]; 
sortArray[i]=temp; 
} 
} 
} 
temp=""; 
return sortArray; 
} // 结束
Javascript 相关文章推荐
编写可维护面向对象的JavaScript代码[翻译]
Feb 12 Javascript
鼠标移到导航当前位置的LI变色处于选中状态
Aug 23 Javascript
javascript去掉代码里面的注释
Jul 24 Javascript
基于javascript实现单选及多选的向右和向左移动实例
Jul 25 Javascript
JS实现仿新浪微博发布内容为空时提示功能代码
Aug 19 Javascript
JS基于Ajax实现的网页Loading效果代码
Oct 27 Javascript
Webwork 实现文件上传下载代码详解
Feb 02 Javascript
值得分享的bootstrap table实例
Sep 22 Javascript
JavaScript实现一个简易的计算器实例代码
May 10 Javascript
小程序二次贝塞尔曲线实现购物车商品曲线飞入效果
Jan 07 Javascript
vue 组件销毁并重置的实现
Jan 13 Javascript
小谈angular ng deploy的实现
Apr 07 Javascript
js字符串的各种格式的转换 ToString,Format
Aug 08 #Javascript
Jquery ajax传递复杂参数给WebService的实现代码
Aug 08 #Javascript
jquery学习笔记 用jquery实现无刷新登录
Aug 08 #Javascript
基于jQuery实现的水平和垂直居中的div窗口
Aug 08 #Javascript
关于hashchangebroker和statehashable的补充文档
Aug 08 #Javascript
基于jQuery的前端数据通用验证库
Aug 08 #Javascript
JS基础之undefined与null的区别分析
Aug 08 #Javascript
You might like
PHP脚本的10个技巧(3)
2006/10/09 PHP
连接到txt文本的超链接,不直接打开而是点击后下载的处理方法
2009/07/01 PHP
destoon首页调用求购供应信息的地区名称的方法
2014/08/21 PHP
PHP中加密解密函数与DES加密解密实例
2014/10/17 PHP
讲解WordPress开发中一些常用的debug技巧
2015/12/18 PHP
javascript 常用方法总结
2009/06/03 Javascript
jQuery 遍历json数组的实现代码
2020/09/22 Javascript
js 异步处理进度条
2010/04/01 Javascript
教你在heroku云平台上部署Node.js应用
2014/07/30 Javascript
学习使用bootstrap的modal和carousel
2016/12/09 Javascript
vue.js实现请求数据的方法示例
2017/02/07 Javascript
Bootstrap + AngularJS 实现简单的数据过滤字符查找功能
2017/07/27 Javascript
jquery 一键复制到剪切板的实例
2017/09/20 jQuery
NodeJS爬虫实例之糗事百科
2017/12/14 NodeJs
iview Upload组件多个文件上传的示例代码
2018/09/30 Javascript
使用jquery Ajax实现上传附件功能
2018/10/23 jQuery
Java Varargs 可变参数用法详解
2020/01/28 Javascript
详细解读Python的web.py框架下的application.py模块
2015/05/02 Python
python处理按钮消息的实例详解
2017/07/11 Python
python读取文件名称生成list的方法
2018/04/27 Python
解决pyinstaller打包pyqt5的问题
2019/01/08 Python
python实现邮件发送功能
2019/08/10 Python
python机器学习实现决策树
2019/11/11 Python
python中sklearn的pipeline模块实例详解
2020/05/21 Python
如何在scrapy中捕获并处理各种异常
2020/09/28 Python
可以随进度显示不同颜色的css3进度条分享
2014/04/11 HTML / CSS
2014年中班元旦活动方案
2014/02/14 职场文书
高中学校对照检查材料
2014/08/31 职场文书
法人授权委托书
2014/09/16 职场文书
给校长的一封检讨书
2014/09/20 职场文书
合作协议书模板2014
2014/09/26 职场文书
公司地址变更通知
2015/04/25 职场文书
学校远程教育工作总结
2015/08/11 职场文书
搞笑婚礼主持词开场白
2015/11/24 职场文书
读后感怎么写?书写读后感的基本技巧!
2019/12/10 职场文书
python本地文件服务器实例教程
2021/05/02 Python