简单方式:

Fast.api.open("wadd/table/retum/editStatus/ids/" + id, "手机退还");

进阶:

//打开生成URL弹窗
$('.btn-generate').click(function () {
Fast.api.open('report/user/generateurl',__('Generate URL'),{
callback:function(value){
//在回调函数里可以调用你的业务代码实现前端的各种逻辑和效果
layer.open({
type: 1,
title: '生成URL',
closeBtn: 2,
shadeClose: true,
area: ['600px', '300px'],
content: '<p style="padding: 10px;font-size: 16px;">'+value+'</p>'
});
},
});
})

generateurl:function(){
Form.api.bindevent($("form[role=form]"), function(data, ret){
//这里是表单提交处理成功后的回调函数,接收来自php的返回数据
Fast.api.close(data);
//这里是关闭弹窗后传递 Fast.api.open中的callback:function
具体可以看下老大写的close方法
}, function(data, ret){
Toastr.success("生成URL失败");
});
},

进阶1:

目的是点击按钮弹窗一个操作窗口,在窗口中提交表单成功后给调用弹窗的页面返回需要的数据,并调用指定的回调函数处理这些数据。

  1. 页面A,html代码中添加一个按钮:
<a data-url="/info/add" href="javascript:;"  class="spec_add_btn" style="padding:0;" data-title="添加" >添加</a>
  1. 页面A,在js代码中添加以下代码监听class=spec_add_btn这个按钮的点击事件并弹窗打开页面B
$(document).on('click','.spec_add_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){
            CallBackFun(value.id, value.name);//在回调函数里可以调用你的业务代码实现前端的各种逻辑和效果
        }
    };
    Fast.api.open(url,msg,options);
});

3、页面B,在js代码中对应的add方法里添加以下代码,监听submit并给页面A返回数据

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

4、页面B,在php代码对应的add方法里添加成功后执行以下代码

$result = $this->model->allowField(true)->save($params);
if ($result !== false)
{
    $data['id'] = $id;
    $data['name'] = $name;
    $this->success('success',null,$data);//这里$data就是返回给第三步js的那个data。这里要根据业务需要返回指定的数据,否则前端接收不到数据。
}

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部

Copyright © 2016-2025.By阿狸小乖 版权所有    主页

滇ICP备17010414号-1