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 相关文章推荐
JS URL传中文参数引发的乱码问题
Sep 02 Javascript
JQuery FlexiGrid的asp.net完美解决方案 dotNetFlexGrid-.Net原生的异步表格控件
Sep 12 Javascript
EasyUI中combobox默认值注意事项
Mar 01 Javascript
JavaScript实现可拖拽的拖动层Div实例
Aug 05 Javascript
Javascript 调用 ActionScript 的简单方法
Sep 22 Javascript
Chrome浏览器的alert弹窗禁止再次弹出后恢复的方法
Dec 30 Javascript
详解vue2父组件传递props异步数据到子组件的问题
Jun 29 Javascript
限时抢购-倒计时的完整实例(分享)
Sep 17 Javascript
JS获取月的第几周和年的第几周实例代码
Dec 05 Javascript
基于javascript处理nginx请求过程详解
Jul 07 Javascript
js实现无缝轮播图插件封装
Jul 31 Javascript
WebStorm中如何将自己的代码上传到github示例详解
Oct 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
PHP 的 __FILE__ 常量
2007/01/15 PHP
thinkphp中连接oracle时封装方法无法用的解决办法
2013/06/17 PHP
推荐一本PHP程序猿都应该拜读的书
2014/12/31 PHP
php实现屏蔽掉黑帽SEO的搜索关键字
2015/04/15 PHP
PHP访问数据库集群的方法小结
2016/03/14 PHP
PHP MVC框架skymvc支持多文件上传
2016/05/26 PHP
PHP安装GeoIP扩展根据IP获取地理位置及计算距离的方法
2016/07/01 PHP
深入理解PHP中mt_rand()随机数的安全
2017/10/12 PHP
php+croppic.js实现剪切上传图片功能
2018/08/14 PHP
浅谈PHP各环境下的伪静态配置
2019/03/13 PHP
PHP call_user_func和call_user_func_array函数的简单理解与应用分析
2019/11/25 PHP
JavaScript使用prototype定义对象类型(转)[
2006/12/22 Javascript
ExtJS下grid的一些属性说明
2009/12/13 Javascript
jQuery插件datalist实现很好看的input下拉列表
2015/07/14 Javascript
JavaScript调用浏览器打印功能实例分析
2015/07/17 Javascript
JS实现的另类手风琴效果网页内容切换代码
2015/09/08 Javascript
OkHttp踩坑随笔为何 response.body().string() 只能调用一次
2018/01/08 Javascript
微信小程序实现验证码获取倒计时效果
2018/02/08 Javascript
Python的Django框架中的Context使用
2015/07/15 Python
使用Python实现BT种子和磁力链接的相互转换
2015/11/09 Python
python中字符串类型json操作的注意事项
2017/05/02 Python
PyTorch读取Cifar数据集并显示图片的实例讲解
2018/07/27 Python
使用Python实现将list中的每一项的首字母大写
2019/06/11 Python
使用Python爬取Json数据的示例代码
2020/12/07 Python
印度领先的眼镜电子商务网站:Lenskart
2019/12/16 全球购物
小米官方旗舰店:Xiaomi
2020/08/07 全球购物
新大陆软件面试题
2016/11/24 面试题
导师评语大全
2014/04/26 职场文书
大学第二课堂活动总结
2014/07/08 职场文书
2015年校长新年寄语
2014/12/08 职场文书
网络管理员岗位职责
2015/02/12 职场文书
老公出轨后的保证书
2015/05/08 职场文书
工伤事故赔偿协议书
2015/08/06 职场文书
初中英语教学随笔
2015/08/15 职场文书
Java数据结构之堆(优先队列)
2022/05/20 Java/Android
ECharts transform数据转换和dataZoom在项目中使用
2022/12/24 Javascript