IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> layui前端父页面向子页面传输数据/表格数据的问题(iframe弹出层),关闭子页面更新表格,已解决 -> 正文阅读

[JavaScript知识库]layui前端父页面向子页面传输数据/表格数据的问题(iframe弹出层),关闭子页面更新表格,已解决

当在一个页面点击一个按钮后弹出一个iframe,如何让改页面的数据传到子页面iframe的文本框等。以下演示的是把layui表格中当前行数据传到子页面,常用情况:编辑

本内容相关的项目实现系统已发布点此查看,收银员账号密码:1001密码123,源码可以到主页下载

layui表格的cols
		cols:
                [[
                    {type: "checkbox", fixed: "left"},

                    {field: 'gid', width: 80, title: 'ID', sort: true,align:"center"},
                    {field: 'gno', width: 110, title: '商品编号',align:"center"},
                    {field: 'gname', width: 200, title: '商品名称', sort: true,align:"center"},

                    {field: 'price', title: '原价', minWidth: 80, sort: true,align:"center"},
                    {field: 'isBargainPrice', width: 110, title: '是否特价',align:"center"},
                    {field: 'bargainPrice', width: 110, title: '特价价格', sort: true,align:"center"},
                    {field: 'unit', title: '单位', minWidth: 80, sort: true,align:"center"},
                    {field: 'stock', width: 110, title: '库存余量', sort: true,align:"center"}
                    , {title: '操作',width:120, toolbar: '#currentTableBar', align: "center", fixed: "right"}

                ]],
我这里是通过点击layui的tool的编辑按钮(表格行的最后的按钮)弹出一个iframe,下面是点击按钮后传输数据的方法,同时打开子页面
 if (obj.event === 'edit'&&identify=="管理员") {

                var index = layer.open({
                    title: '编辑商品',
                    type: 2,
                    shade: 0.2,
                    maxmin: true,
                    shadeClose: true,
                    area: ['100%', '100%'],
                    content: '/editGoods',
                    success:function () {
                        //表单数据回显,把表格当前行显示到子页面的表单内,find后括号内的是子页面表单的id
                        var body = layer.getChildFrame('body',index); body.find("#gid").val(data.gid);
                        var body = layer.getChildFrame('body',index); body.find("#gno").val(data.gno);
                        var body = layer.getChildFrame('body',index); body.find("#gname").val(data.gname);
                        var body = layer.getChildFrame('body',index); body.find("#price").val(data.price);
                        var body = layer.getChildFrame('body',index); body.find("#bargainPrice").val(data.bargainPrice);
                        var body = layer.getChildFrame('body',index); body.find("#unit").val(data.unit);
                        var body = layer.getChildFrame('body',index); body.find("#stock").val(data.stock);
                    }
                });
                $(window).on("resize", function () {
                    layer.full(index);
                });
                return false;
            } 
子页面iframe的代码,表格数据都将映射到对应id的表单内,编辑完成后有一个保存按钮,点击保存按钮则关闭当前子页面。
<div class="layui-form layuimini-form">
    <div class="layui-form-item">
        <label class="layui-form-label required">当前商品id</label>
        <div class="layui-input-block">
            <input type="text" name="gid" readonly="readonly" id="gid" lay-verify="required"
                   value="" class="layui-input">
            <tip>不可编辑。</tip>
        </div>
    </div>
    <div class="layui-form-item">
        <label class="layui-form-label required">商品编号</label>
        <div class="layui-input-block">
            <input type="text" readonly="readonly" lay-verify="number|required" placeholder="请输入卡号"name="gno" id="gno"
                   class="layui-input">
        </div>
    </div>


    <div class="layui-form-item">
        <label class="layui-form-label required">商品名称</label>
        <div class="layui-input-block">
            <input type="text" lay-verify="required" name="gname" id="gname" class="layui-input">
        </div>
    </div>
    <div class="layui-form-item">
        <label class="layui-form-label required">原价</label>
        <div class="layui-input-block">
            <input type="number" lay-verify="required|number" name="price" id="price" class="layui-input">
        </div>
    </div>
    <div class="layui-form-item">
        <label class="layui-form-label required">是否特价</label>
        <div class="layui-input-inline">
            <select name="isBargainPrice" id="isBargainPrice">

                <option value=""></option>
                <option value=""></option>
            </select>
        </div>
    </div>
    <div class="layui-form-item">
        <label class="layui-form-label required">特价价格</label>
        <div class="layui-input-block">
            <input type="number" lay-verify="required|number" name="bargainPrice" id="bargainPrice" class="layui-input">
        </div>
    </div>
    <div class="layui-form-item">
        <label class="layui-form-label required">单位</label>
        <div class="layui-input-inline">
        <select name="unit" id="unit" lay-search="">
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
            <option value="千克">千克</option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>

        </select>
        </div>
    </div>
    <div class="layui-form-item">
        <label class="layui-form-label required">库存</label>
        <div class="layui-input-block">
            <input type="number" lay-verify="required|integer" name="stock" id="stock" class="layui-input">
        </div>
    </div>
    <div class="layui-form-item">
        <div class="layui-input-block">
            <button class="layui-btn layui-btn-normal" lay-submit lay-filter="saveBtn">确认保存</button>
        </div>
    </div>
</div>
</div>
保存按钮退出iframe事件,当然数据也将传送到后端
//监听提交
        form.on('submit(saveBtn)', function (data) {

            var goods = JSON.stringify(data.field)
            $.ajax({
                type: "POST",
                url: "/updateGoods",
                data:goods,
                contentType: "application/json;charset=utf-8",
                //async:false,
                success: function (result) {
                    if (result == "更新失败") {
                        alert("网络不佳!请稍后重试")
                    }

                },
                error: function (data, status, e) {
                    alert("网络不佳!请稍后重试");
                }
            })


            var index = layer.alert("修改成功", {
                title: '提示'
            }, function () {

                // 关闭弹出层
                layer.close(index);

                var iframeIndex = parent.layer.getFrameIndex(window.name);
                //更新父页面的表格
                window.parent.location.reload();
                parent.layer.close(iframeIndex);

            });

            return false;
        });
  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-07-25 11:33:33  更:2021-07-25 11:34:50 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/2 19:02:58-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码