layer 弹出层 回调函数调用 弹出层页面 函数

1、项目中用到layer 弹出层,定义一个公用的窗口,问题来了窗口弹出来了,如何保存页面上的数据呢?疯狂百度之后,有了结果,赶紧记下。

2、自己定义的公共页面方法:

复制代码
  layuiWindow: function (options) {
 
        var defaults = {
            title: '添加菜单',
            width: '100px',
            height: '100px',
            url: '',
            shade: 0.3,
            btn: ['确认', '关闭'],
            btnclass: ['btn btn-primary', 'btn btn-danger'],
            callBack:null
        };

        var options = $.extend(defaults,options);
        
        alert(options.width+"=+="+ options.height);

        //页面层
        layer.open({
            type: 2,
            title: options.title,
            //skin: 'layui-layer-rim', //加上边框
            area: [options.width, options.height], //宽高
            content: options.url,
            btn: options.btn, //只是为了演示
            yes: function(){
                options.callBack();
            },
            btn2: function(){
              layer.close();
            }
        });
    }
复制代码

 3、父页面:

复制代码
 $.layuiWindow({
            title: "菜单新增",
            url: "/SysMenu/Form?Id=" + id + "&Name=" + name,
            width: '400px',
            height: '300px',
            callBack: function () {
                //top.frames["Form"].submitForm();
                //$(la).find("iframe")[0].contentWindow.submitForm();
                window["layui-layer-iframe1"].submitForm();  //这里是重点,赶紧圈起来这里一定会用到。
            }
        });
复制代码

 4、子页面方法:

复制代码
 //保存数据
    function submitForm() {
        var parentId = $("#parentId").val();
        var childrenNode = $("#txtChildren").val();
        var path = $("#txtPath").val();
        $.ajax({
            url: "/SysMenu/Insert",
            data: { parentId: parentId, name: childrenNode, menuPath: path },
            dataType: "json",
            type: "post",
            success: function (req) {
                alert("req" + req);
            }, error: function (err) {
                alert("err"+err);
            }

        });
    }
复制代码

 

posted @   幽冥狂_七  阅读(7227)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
历史上的今天:
2017-01-12 MVC ---- T4(1)
2017-01-12 MVC ---- Linq查询
2017-01-12 MVC ---- 标准查询运算符
2017-01-12 MVC ---- Lambda表达式
点击右上角即可分享
微信分享提示