PHP建站技术分享-从入门到精通PHP建站技术分享-从入门到精通PHP建站技术分享-从入门到精通

QQ:420220301 微信/手机:150-3210-7690
当前位置:首页 > CMS教程 > Fastadmin

自定义按钮使用对话框不会自动关闭的解决方案

管理员 2024-12-14
Fastadmin
9

自定义按钮组:

                        {                            field: 'operate', title: __('Operate'), table: table, buttons: [                                {                                    name: 'audit',                                    text: __('Doaudit'),                                    title: __('Doaudit'),                                    classname: 'btn btn-xs btn-success btn-magic btn-ajax',                                    icon: 'fa fa-check-circle',                                    url: '控制器中对应操作的url',                                    confirm: '确认审核通过吗?',                                    hidden: function (data) {                                        if (data.status === 1) {                                            return true;                                        }                                    },                                    refresh: true,                                },                                {                                    name: 'reject',                                    text: __('Reject'),                                    icon: 'fa fa-times-circle',                                    classname: 'btn btn-xs btn-danger btn-dialog',                                    url: function (row, column) {                                        return "控制器中对应操作的url?ids=" + row.id;                                    },                                    extend: 'data-area='["50%","50%"]'', //这是控制弹窗的弹出的尺寸                                    callback: function (data) {                                        $(".btn-refresh").trigger("click");//刷新当前页面的数据                                        console.error(data);//控制输出回调数据                                    },                                    hidden: function (data) {   //控制按钮隐藏方法 判断表格数据是否满足要求,然后隐藏或显示                                        if (data.status === 2) {                                            return true;                                        }                                    }                                }                            ], events: Table.api.events.operate, formatter: Table.api.formatter.operate                        }

其中按钮 name: 'reject' 的按钮使用了dialog弹窗

解决办法:在控制器对应的js文件中进行如下修改:

........        edit: function () {            Controller.api.bindevent();        },        reject: function () {            Form.api.bindevent($("form[role=form]"), function (data, ret) {                //这里是表单提交处理成功后的回调函数,接收来自php的返回数据                Fast.api.close(data);//这里是重点                Toastr.success("成功");//这个可有可无            }, function (data, ret) {                Toastr.success("失败");            });        },........        

参考文章:
https://ask.fastadmin.net/article/6519.html
https://ask.fastadmin.net/article/2527.html


希望以上内容对你有所帮助!如果还有其他问题,请随时提问。 各类知识收集 拥有多年CMS企业建站经验,对 iCMS, Fastadmin, ClassCMS, LeCMS, PbootCMS, PHPCMS, 易优CMS, YzmCMS, 讯睿CMS, 极致CMS, Wordpress, HkCMS, YznCMS, WellCMS, ThinkCMF, 等各类cms的相互转化,程序开发,网站制作,bug修复,程序杀毒,插件定制都可以提供最佳解决方案。

相关推荐

扫码关注

qrcode

QQ交谈

回顶部