layui.table.reload后upload按钮失效

在layui开发里,将导入按钮置于table头部工具栏,点击查询按钮刷新table后,导入按钮失效,重新刷新页面先点击导入则可用。解决方案是在table.render中添加done方法并调用bindTableToolbarFunction(),同时定义该方法并重新定义layui.upload。

layui开发中碰到问题,导入按钮放在table的头部工具栏中,在点击查询按钮刷新table后,发现导入按钮失效了。重新刷新页面,先点击导入时可以用的。

解决方案:

1,table.render中添加done方法,里面添加bindTableToolbarFunction()

table.render({
        elem: '#currentTableId'
        , url: your_url
        , where: your_where
        , toolbar: '#toolbarDemo'
        , height: 500
        , defaultToolbar: []
        , cols: cols
        , done: function (value, date, endDate) {
            //重新绑定,upload方法
            bindTableToolbarFunction()
        }
    });

2,定义bindTableToolbarFunction(),包含原来的upload

function bindTableToolbarFunction(){
//这里重新定义 layui.upload
        layui.use(['upload'], function () {
            //导入excel 
            upload.render({
                elem: '#importExcel'
                , url: url
                , accept: 'file' //普通文件
                , exts: 'xls|xlsx'
                , done: function (res) {
                    //上传完毕回调
                    if (res) {
                        layer.open({
                            title: '提示信息'
                            , content: '导入成功!'
                            , btn: ['确认']
                            , yes: function () {
                                //刷新当前页面
                                window.location.reload();
                            }
                        });
                    } else {
                        layer.open({
                            title: '提示信息'
                            , content: '导入异常,请联系管理员!'
                        });
                    }
                    console.log(res);
                }
                , error: function () {
                    //请求异常回调
                    layer.open({
                        title: '提示信息'
                        , content: '导入失败!'
                    });
                }
            });
        })
    }

这里方法中重新定义了layui.upload,原来upload写在外层

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值