Fastadmin fast.api.open回调函数

文章讲述了如何通过Fast.api的回调函数功能,在A页面点击事件打开B页面后,当B页面上的特定按钮被点击时,将数据传回给A页面。在B页面,数据会被处理并以Fast.api.close()方法关闭时传递出去,如果需要传输多个数据,可以将它们拼接成字符串。

通过回调函数讲子页面的数据传输到父页面,
A页面为父页面,B页面是子页面
在A页面点击事件调B页面

Fast.api.open("URL","页面名称",{
    area:['78%','95%'],
    callback:function(value){
    //value 就是B页面传输的数据

    }
}
在B页面:
B:function(){
    //页面中加上以下部分 '.btn-success是B页面的按钮的class
    $(document).on('click', '.btn-success', function(){
    //data为要传输的数据,只能放一个数据,所以传输的数据多的时候可以拼接一个字符串
    Fast.api.close(data);
    });
}

 ------------------再举例

 

复制代码
$(document).on('click','.btn', function (event) {
    var url = $(this).attr('data-url');
    if(!url) return false;
    var msg = $(this).attr('data-title');
    var width = $(this).attr('data-width');
    var height = $(this).attr('data-height');
    var area = [$(window).width() > 800 ? (width?width:'800px') : '95%', $(window).height() > 600 ? (height?height:'600px') : '95%'];
    var options = {
        shadeClose: false,
        shade: [0.3, '#393D49'],
        area: area,
        callback:function(value){       //这个value就是传上来的值
            console.log(value);
        }
    };
    Fast.api.open(url,msg,options);
});
复制代码

在子窗体的js里加,本身如果要绑定事件是:
Controller.api.bindevent();
但是如果要传值,可以改成以下:

//给按钮添加点击事件
$(document).on('click', '.btn-band', function () {
    var ids = Table.api.selectedids(table);   //获取选中的id,获取到的是个数组
    Fast.api.close(ids);//这里是重点,将这个ids 传至父页面
});

 

posted @   温柔的风  阅读(534)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示