jQuery实现列表的全选功能

时间:2021-05-26

只需要几行代码就可以实现列表的全选功能,并且可以配合post请求执行后台的删除程序

js

复制代码 代码如下:
function DelAlert(data)
{
if(data == 'error')
{
alert("错误~");
}
else if(data == 'success')
{
alert("成功~");
location.reload();
}
}
//引入jquery,这里后台配合的是thinkphp
$(function(){
//每行的checkbox需要有check-value属性来存放当前行的id
//选中全部,checkAll 为选中全部的checkbox的id selctone 为每一行checkbox的class
$('#checkAll').selectall('selectone');
//删除选中,deleteAll为删除全部按钮的id selectone 为每一行checkbox的class 后台接收参数ids 格式如: 1,2,3
var url = "Home/Role/delall'";
$('#deleteAll').delselect('selectone',url,function(data){
DelAlert(data);
},function(){
layer.msg("没有选中内容",2,0);
});
})

jquery.selectall.js

复制代码 代码如下:
(function( $ ){
$.fn.selectall = function(className) {
$(this).bind('click',function()
{
if($(this).attr('checked') == 'checked')
{
$(this).attr("checked",false)
$('.'+className).attr('checked',false);
}else{
$(this).attr('checked','checked');
$('.'+className).attr('checked','checked');
}
});
$('.'+className).bind('click',function()
{
if($(this).attr('checked') == 'checked')
{
$(this).attr("checked",false);
}else{
$(this).attr('checked','checked');
}
});
};
$.fn.delselect = function(className,url,fun,unselectfun){
$(this).bind('click',function(){
var selectid = '';
$("."+className).each(function(){
if($(this).attr('checked')=='checked'){
selectid+=$(this).attr('check-value')+',';
}
});
if(selectid)
{
selectid = selectid.substring(0,selectid.length-1);
$.post(url,{ids:selectid},function(data){
fun(data);
});
}else
{
unselectfun();
}
});
};
})( jQuery );

以上所述就是本文的全部内容了,希望大家能够喜欢。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章