📄 check.js
字号:
//Code by Jarry.Li ,CopyRight @ Jiarry.126.com,All right reserved !
//homepage : http://Jiarry.blogchina.com
//E-mail:jiarry@hotmail.com
//使用方法:
/**************
面向对象写法用法如下;声明form以及多选框;与下面效果一样
var selectit = selecttheForm;
selectit.f = document.forms[0];
//selectit.chk = document.getElementById("chkall");//如果动态创建的多选框用id
selectit.chk = document.forms[0].chkall;//在全选or Form之后
selectit.checkall();//全选
selectit.reverseCheck();//反选
selectit.clickchk();//单个选择以判断是否所有都被选择或取消了
***************/
var selecttheForm = {
f : this.f,
chk : this.chk,
clickchk : function(){//传入多选框name
var allcheck = true;
var chk = this.chk;
for(var i=0;i<this.f.elements.length;i++){
if(this.f.elements[i].tagName.toLowerCase()=="input" && this.f.elements[i].type=="checkbox" && this.f.elements[i] != chk){
if(this.f.elements[i].checked==false){allcheck=false;}
}
}
chk.checked = allcheck ? true : false;
}
,
subDelete : function(ondelete){
var cansub = false;
for(var i=0;i<this.f.elements.length;i++){
if( this.f.elements[i].checked ) cansub = true;
}
if(cansub){
ondelete.call(this);//call delete function;
}else{
//alert("请至少选择一项,谢谢!");
showtip("请至少选择一项,谢谢!");//适用于ajax的方式;
closeTip();//关闭;
}
}
,
checkall : function(){//全选or取消全选;
var chk = this.chk;
for(var i=0;i<this.f.elements.length;i++){
if(this.f.elements[i].tagName.toLowerCase()=="input" && this.f.elements[i].type=="checkbox"){
if(chk.checked){//check all checkbox input;
this.f.elements[i].checked=true;
}else{
this.f.elements[i].checked=false;
}
}
}
}
,
reverseCheck : function(){//反选
var chk = this.chk;
for(var i=0;i<this.f.elements.length;i++){
if(this.f.elements[i].tagName.toLowerCase()=="input" && this.f.elements[i].type=="checkbox" && this.f.elements[i] != chk){
this.f.elements[i].checked = this.f.elements[i].checked ? false : true;
}
this.clickchk();//是否选中多选框
}
}
}
/**************
面向对象prototype写法用法如下;声明form以及多选框;与上面效果一样
var selectit = new selectform(document.forms[0],document.forms[0].chkall);
先声明一个selectform变量,在全选Form之后,传入两个参数;
selectit.checkall();//全选
selectit.reverseCheck();//反选
selectit.clickchk();//单个选择以判断是否所有都被选择或取消了
***************/
function selectform(formname,chkall){
this.f = formname;
this.chk = chkall;
}
selectform.prototype.clickchk = function(){//传入多选框name
var allcheck = true;
var chk = this.chk;
for(var i=0;i<this.f.elements.length;i++){
if(this.f.elements[i].tagName.toLowerCase()=="input" && this.f.elements[i].type=="checkbox" && this.f.elements[i] != chk){
if(this.f.elements[i].checked==false){allcheck=false;}
}
}
chk.checked = allcheck ? true : false;
}
selectform.prototype.subDelete = function(ondelete){//ondelete是传入多选的函数;
var cansub = false;
for(var i=0;i<this.f.elements.length;i++){
if( this.f.elements[i].checked ) cansub = true;
}
if(cansub){
ondelete.call(this);
}else{
alert("请至少选择一项,谢谢!");
}
}
selectform.prototype.checkall = function(){//全选or取消全选;
var chk = this.chk;
for(var i=0;i<this.f.elements.length;i++){
if(this.f.elements[i].tagName.toLowerCase()=="input" && this.f.elements[i].type=="checkbox"){
if(chk.checked){//check all checkbox input;
this.f.elements[i].checked=true;
}else{
this.f.elements[i].checked=false;
}
}
}
}
selectform.prototype.reverseCheck = function(){//反选
var chk = this.chk;
for(var i=0;i<this.f.elements.length;i++){
if(this.f.elements[i].tagName.toLowerCase()=="input" && this.f.elements[i].type=="checkbox" && this.f.elements[i] != chk){
this.f.elements[i].checked = this.f.elements[i].checked ? false : true;
}
this.clickchk();//是否选中多选框
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -