//存放表格当前页的数据
var currentPage = new Array();
//存放已选的数据
var checkData = new Array();
layui.use(['layer', 'table', 'form'],function() {
var layer = layui.layer;
var table = layui.table;
var form = layui.form;
getData();
//查找数据
function getData(){
var keyword = $("#jname").val();
table.render({
elem: '#tablejcy'
,height: 500
,url: 'ajax.do?ctrl=hl_cktcxs_findAlltc&token=' + tokenstr+'&keyword='+keyword //执行路径,获取类型下拉选数据 ' //数据接口
,cols: [[ //表头
{type:'checkbox', width:80}
,{field: 'tcid', title: '套餐id', width:180, hide:true}
,{field: 'tcmc', title: '套餐名称', width:180}
,{field: 'bzjg', title: '标准价格', width:180}
,{field: 'tcts', title: '套餐天数', width: 180}
,{fixed: 'right', width:180, align:'center', toolbar: '#tcbar'}
]]
,page: true
,done:function(res, curr, count){
//获取当前页的数据
currentPage = res.data;
for (var i = 0; i < currentPage.length; i++) {
for (var k = 0; k < checkData.length; k++) {
if(currentPage[i].cpid == checkData[k].cpid){
//可以自行添加判断的条件是否选中
//这句才是真正选中,通过设置关键字LAY_CHECKED为true选中
currentPage[i]["LAY_CHECKED"]='true';
//下面三句是通过更改css来实现选中的效果
var index= currentPage[i]['LAY_TABLE_INDEX'];
$('tr[data-index=' + index + '] input[type="checkbox"]').prop('checked', true);
$('tr[data-index=' + index + '] input[type="checkbox"]').next().addClass('layui-form-checked');
}
}
}//for_end
//设置全选checkbox的选中状态,只有改变LAY_CHECKED的值, table.checkStatus才能抓取到选中的状态
var checkStatus = table.checkStatus('tablejcy');
console.log(checkStatus)
if (checkStatus.isAll) {
$('.layui-table-header th[data-field="0"] div input[type="checkbox"]').prop('checked', true);
$('.layui-table-header th[data-field="0"] div input[type="checkbox"]').next().addClass('layui-form-checked');
}
}
});
}
//监听复选
table.on('checkbox(tablejcy)', function(obj){
//如果是单选
if(obj.type == "one"){
var iscunzai = -1;
for (var i = 0; i < checkData.length; i++) {
if(obj.data.cpid == checkData[i].cpid){
iscunzai = i;
}
}
//选中
if(obj.checked){
//如果已选择的数据中没有该数据则添加
if(iscunzai == -1){
checkData.push(obj.data);
}
}else {
checkData.splice(iscunzai,1);//从start的位置开始向后删除delCount个元素
}
}else{
//如果为全选
for (var i = 0; i < currentPage.length; i++) {
var iscunzai = true;
var index;
for (var k = 0; k < checkData.length; k++) {
if(currentPage[i].cpid == checkData[k].cpid){
//如果选中的数组数据中已经存在该数据
iscunzai = false;
index = k;
}
}
if(obj.checked){
if(iscunzai){
checkData.push(currentPage[i]);
}
}else{
checkData.splice(index,1);//从start的位置开始向后删除delCount个元素
}
}
}
});
});