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 相关文章推荐
Display SQL Server Login Mode
Jun 21 Javascript
javascript 获取模态窗口的滚动位置代码
Aug 06 Javascript
javascript加减乘除的简单实例
Jul 12 Javascript
深入浅析JS是按值传递还是按引用传递(推荐)
Sep 18 Javascript
浅析Jquery操作select
Dec 13 Javascript
JS中SetTimeout和SetInterval使用初探
Mar 23 Javascript
js编写选项卡效果
May 23 Javascript
集成vue到jquery/bootstrap项目的方法
Feb 10 jQuery
javascript显示动态时间的方法汇总
Jul 06 Javascript
vue组件实践之可搜索下拉框功能
Nov 25 Javascript
微信小程序使用echarts获取数据并生成折线图
Oct 16 Javascript
JS函数基本定义与用法示例
Jan 15 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
一条久听不愿放下的DIY森海MX500,三言两语话神奇
2021/03/02 无线电
基于initPHP的框架介绍
2013/04/18 PHP
ThinkPHP分组下自定义标签库实例
2014/11/01 PHP
使用PHP similar text计算两个字符串相似度
2015/11/06 PHP
PHP使用PDO操作数据库的乱码问题解决方法
2016/04/08 PHP
php array_keys 返回数组的键名
2016/10/25 PHP
Yii 2.0在Grid中格式化时间方法示例
2017/06/06 PHP
Javascript 跨域访问解决方案
2009/02/14 Javascript
给页面渲染时间加速 干掉Dom Level 0 Event
2012/12/19 Javascript
jQuery实现 注册时选择阅读条款 左右移动
2013/04/11 Javascript
JavaScript核心语法总结(推荐)
2016/06/02 Javascript
概述jQuery的元素筛选
2016/11/23 Javascript
浅谈vue路径优化之resolve
2017/10/13 Javascript
浅谈mint-ui loadmore组件注意的问题
2017/11/08 Javascript
微信小程序版翻牌小游戏
2018/01/26 Javascript
vue改变循环遍历后的数据实例
2019/11/07 Javascript
vue axios封装httpjs,接口公用配置拦截操作
2020/08/11 Javascript
[02:01]BBC DOTA2国际邀请赛每日综述:八强胜者组鏖战,中国队喜忧参半
2014/07/19 DOTA
Python实现的检测web服务器健康状况的小程序
2014/09/17 Python
Python迷宫生成和迷宫破解算法实例
2019/12/24 Python
解决Pycharm中恢复被exclude的项目问题(pycharm source root)
2020/02/14 Python
Python 自由定制表格的实现示例
2020/03/20 Python
keras.utils.to_categorical和one hot格式解析
2020/07/02 Python
关于css中margin的值和垂直外边距重叠问题
2020/10/27 HTML / CSS
Html5 postMessage实现跨域消息传递
2016/03/11 HTML / CSS
日本PLST在线商店:日本时尚杂志刊载的人气服装
2016/12/10 全球购物
Glamest意大利:女性在线奢侈品零售店
2019/04/28 全球购物
Spotahome意大利:公寓和房间出租
2020/02/21 全球购物
安全大检查反思材料
2014/01/31 职场文书
设备动力科岗位职责范本
2014/02/23 职场文书
开业庆典主持词
2014/03/21 职场文书
电子商务专业毕业生求职信
2014/06/12 职场文书
中秋客户感谢信
2015/01/22 职场文书
端午节活动总结报告
2015/02/11 职场文书
毕业生政审意见范文
2015/06/04 职场文书
详细聊聊关于Mysql联合查询的那些事儿
2021/10/24 MySQL