bootstrapTable 列表分页选择 记住翻页前面的选择并传给父页面 复选框回填

子页面:

columns :

{
    checkbox: true,

    formatter: function (i, row) { // 每次加载 checkbox 时判断当前 row 的 id 是否已经存在全局 Set() 里
        if ($.inArray(row.customerId, overAllIds) != -1) { // 因为 判断数组里有没有这个 id 
            return {
                checked: true
                    // 存在则选中
            }
        }
            //复选框回填,不需要可以不写
//        if (in_array(row.customerId, strs))      
//            return {         
//                disabled: false, //设置是否可用 
//                        checked: true //设置选中                           
//            };   
//        return {         
//            disabled: false, //设置是否可用 
//                     checked: false //设置选中                     
//       };

    }

},
var overAllIds = new Array(); //全局数组
var overAllNames = new Array(); //全局数组

 //调这个方法 : 把返回值传给父页面
function confirm() {
    var len = overAllIds.length;
    if (len == 0) {
        layer.msg("请选择客户");
        return;
    }
    var data = {
        ids: overAllIds,
        names: overAllNames,
        len: len
    }
    parent.back(data);//父页面方法
    var index = parent.layer.getFrameIndex(window.name); //获取窗口索引
    parent.layer.close(index);


}

//调这个方法 : 直接返回id数组
function getSelectCheck() {
    //直接返回id数组
    return overAllIds; 
}

function examine(type, datas) {
    if (type.indexOf('uncheck') == -1) {
        $.each(datas,
            function (i, v) {
                // 添加时,判断一行或多行的 id 是否已经在数组里 不存则添加 
                overAllIds.indexOf(v.customerId) == -1 ? overAllIds.push(v.customerId) : -1;
                overAllNames.indexOf(v.customerName) == -1 ? overAllNames.push(v.customerName) : -1;
            });
    } else {
        $.each(datas, function (i, v) {
            overAllIds.splice(overAllIds.indexOf(v.customerId), 1); //删除取消选中行
            overAllNames.splice(overAllNames.indexOf(v.customerName), 1); //删除取消选中行
        });
    }
}
$('#exampleTable').on('uncheck.bs.table check.bs.table check-all.bs.table uncheck-all.bs.table', function (e, rows) {
    var datas = $.isArray(rows) ? rows : [rows]; // 点击时获取选中的行或取消选中的行
    examine(e.type, datas); // 保存到全局 Array() 里
});

//复选框回填,不用可以不写
//var customerId = $("#customerId").val();
//var strs= new Array(); //定义一数组 
//strs=customerId.split(","); //字符分割 

//function in_array(stringToSearch, arrayToSearch) {
//    for (s = 0; s < arrayToSearch.length; s++) {
//     thisEntry = arrayToSearch[s].toString();
//     if (thisEntry == stringToSearch) {
//      return true;
//     }
//    }
//    return false;
//}

父页面:

function back(obj){
	var idss = obj.ids;
	var namess = obj.names;
	
	$("#customerId").val(idss);
	$("#customerName").val(namess);
	
}

 

 

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值