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 相关文章推荐
模仿jQuery each函数的链式调用
Jul 22 Javascript
JavaScript中圆括号()和方括号[]的特殊用法疑问解答
Aug 06 Javascript
探讨JavaScript中声明全局变量三种方式的异同
Dec 03 Javascript
JS获取select的value和text值的简单实例
Feb 26 Javascript
js实现iframe自动自适应高度的方法
Feb 17 Javascript
javascript实现获取服务器时间
May 19 Javascript
在使用JSON格式处理数据时应该注意的问题小结
May 20 Javascript
Vue中添加手机验证码组件功能操作方法
Dec 07 Javascript
基于js中的存储键值对以及注意事项介绍
Mar 30 Javascript
js实现图片粘贴到网页
Dec 06 Javascript
javascript 使用sleep函数的常见方法详解
Apr 26 Javascript
Node实现搜索框进行模糊查询
Jun 28 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
重置版战役片段
2020/04/09 魔兽争霸
PHP中的traits简单使用实例
2015/05/13 PHP
常用的php图片处理类(水印、等比缩放、固定高宽)分享
2015/06/19 PHP
Yii框架应用组件用法实例分析
2020/05/15 PHP
JQuery UI皮肤定制
2009/07/27 Javascript
js控制鼠标事件移动及移出效果显示
2014/10/19 Javascript
JavaScript判断表单提交时哪个radio按钮被选中的方法
2015/03/21 Javascript
js HTML5多媒体影音播放
2016/10/17 Javascript
jQuery中可见性过滤器简单用法示例
2018/03/31 jQuery
Vue 子组件与数据传递问题及注意事项
2019/07/11 Javascript
python写的ARP攻击代码实例
2014/06/04 Python
Python中操作MySQL入门实例
2015/02/08 Python
python实现给数组按片赋值的方法
2015/07/28 Python
python脚本监控Tomcat服务器的方法
2018/07/06 Python
浅谈Python3中strip()、lstrip()、rstrip()用法详解
2019/04/29 Python
基于python-opencv3的图像显示和保存操作
2019/06/27 Python
python 的 scapy库,实现网卡收发包的例子
2019/07/23 Python
使用tensorflow框架在Colab上跑通猫狗识别代码
2020/04/26 Python
Pytorch模型迁移和迁移学习,导入部分模型参数的操作
2021/03/03 Python
ABOUT YOU匈牙利:500个最受欢迎的时尚品牌
2019/07/19 全球购物
土耳其风格手工珠宝:Ottoman Hands
2019/07/26 全球购物
澳大利亚在线批发商:Simply Wholesale
2021/02/24 全球购物
如何启动时不需输入用户名与密码
2014/05/09 面试题
C语言中break与continue的区别
2012/07/12 面试题
链表面试题-一个链表的结点结构
2015/05/04 面试题
SQL面试题
2013/04/30 面试题
办加油卡单位介绍信
2014/01/09 职场文书
2014年上半年工作自我评价
2014/01/18 职场文书
五一手机促销方案
2014/03/08 职场文书
认购协议书范本
2014/04/22 职场文书
安全生产目标管理责任书
2014/07/25 职场文书
2014年度党员自我评议
2014/09/13 职场文书
教师个人学习总结
2015/02/11 职场文书
毕业生政审意见范文
2015/06/04 职场文书
环保证明
2015/06/23 职场文书
致运动员加油稿
2015/07/21 职场文书