layui使用 ——父,子页面传值
页面传值是非常常用的,layui自带弹窗功能,但是内置使用的是location.href 暂时没找到方法条件请求头,所以在后台需要放开拦截器,
layer.open({
type : 2,
title: "分类详情",
area: ["50%","90%"],
closeBtn: false,
shadeClose: true, //点击遮罩关闭
btn: ['保存', '关闭'] ,
yes: function(index,layero){
var winds = $(layero).find("iframe")[0].contentWindow;
var itemCatDetail ={
cateDeId:winds.cateDeId,
cateId:data.catId,
introduction:winds.layedit.getContent(winds.editor),
imgStr:winds.imgUrlList,
videoStr:winds.videoUrl
}
console.log(JSON.stringify(itemCatDetail));
if(!lock) {
lock=true;
layui.$.ajax({
type: "POST",
url: "/itemCat/addItemCatDetail",
data: JSON.stringify(itemCatDetail),
dataType: 'json',
contentType: "application/json; charset=utf-8",
beforeSend: function (XMLHttpRequest) {
XMLHttpRequest.setRequestHeader("token", layui.data(layui.setter.tableName)["token"]);
},
success: function (res) {
layer.msg(res.msg);
var iframeWin = window[layero.find('iframe')[0]['name']];
iframeWin.location.reload;
},
complete: function( xhr,data ){
layui.data(layui.setter.tableName, {
key: "token",
value: xhr.getResponseHeader("token")
})
}
});
}
},
btn2: function(){
layer.closeAll();
},
shade: 0,
content : "CateDetail.html",
success:function(layero,index){
var body = layer.getChildFrame('body', index);
body.contents().find("#cateId").val(data.catId);
}});
}
在layer.open的success方法中拿到子页面的body对象 var body = layer.getChildFrame('body', index);
然后对隐藏的<input type="hidden" name="parentId" id="cateId">中赋值
body.contents().find("#cateId").val(data.catId);此时直接获取即可
然后可以使用 var winds = $(layero).find("iframe")[0].contentWindow;获取子页面的window对象可以拿到子页面定义的变量的值,即可获取子页面的值,然后请求后台即可
子页面也可以使用
$("#back").click(function () {
var indexNow = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
parent.location.reload();
parent.layer.close(indexNow);
})
关闭子页面,并刷新父页面
layui使用 ——父,子页面传值的更多相关文章
- artdialog4.1.7 中父页面给子页面传值
artdialog4.1.7中父页面给子页面传值时看了一些网友的解决方法: 在父页面声明全局变量 var returnValue=“ ”,子页面用art.dialog.opener.returnVal ...
- layer.open中父页面向子页面传值
1.咱先看图说话 父list.jsp 子operate.jsp实现的代码1 在父页面上完成对子页面的数据渲染 function setData(data) { var lay=layer.open({ ...
- 在alert里面加入一个页面,子页面传值父页面
把easyDialog v2.0这个插件加入到了项目中,在做选择部门功能时运用这个插件,在easyDialog.open里面的content函数中套了一个iframe标签,把部门页面的地址放入到src ...
- 小程序navigateBack,子页面传值给父页面
子页面 let page = getCurrentPages(); let prevPage = page[page.length - 2]; prevPage.setData({ lxr :item ...
- layer子层给父层页面元素赋值,以达到向父层页面传值的效果
父层: jsp中: //页面上添加一个隐藏的输入框待用于被子层设置value,从而将子层的数据传递到此页面 <input type="hidden" id="get ...
- iframe中父页面与子页面的传值方法
涉及到iframe传值的情况有这么几种:(1)父页面给iframe中的子页面传值(2)子页面调用父页面中的函数(3)iframe中的子页面给父页面传值(4)兄弟iframe之间的传值 下面来逐一看一下 ...
- AppBox v6.0中实现子页面和父页面的复杂交互
前言 1. AppBox是捐赠开源(获取源代码至少需要捐赠作者 1 元钱),基于的 FineUI(开源版)则是完整开源,网址:http://fineui.codeplex.com/ 2. 你可以通过捐 ...
- uni-app开发经验分享一: 多页面传值的三种解决方法
开发了一年的uni-app,在这里总结一些uni-app开发中的问题,提供几个解决方法,分享给大家: 问题描述:一个主页面,需要联通一到两个子页面,子页面传值到主页面,主页面更新 问题难点: 首先我们 ...
- layui type:2 iframe子页面向父页面传值
需求: 选择子页面表格中的radio或者双击该行,得到的该行数据传到父页面,由父页面渲染. 网上的各种方法都用了,父页面就是获取不到子页面传的值,过了一晚上,睡了一觉,柳暗花明又一村. layui t ...
随机推荐
- Java多线程编程 — 锁优化
阅读目录 一.尽量不要锁住方法 二.缩小同步代码块,只锁数据 三.锁中尽量不要再包含锁 四.将锁私有化,在内部管理锁 五.进行适当的锁分解 正文 并发环境下进行编程时,需要使用锁机制来同步多线程间 ...
- “全栈2019”Java第九十六章:抽象局部内部类详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- JSP(汇聚页)
JSP(汇聚页) ------------------------------------------------------------------------------------------- ...
- python接口自动化发送get请求 详解(一)
前言:接口自动化实现自动化脚本比较稳定,主要用到requests模块,后面我会把这个模块单独拉出来写一下. 一.环境安装 1.用pip安装requests模块 >>pip install ...
- 新版 iPad Pro 弯了,苹果表示这是正常现象……
简评:苹果上个月才发布的新版 iPad Pro 出问题了.有用户抱怨说,iPad 出现了机身弯曲.然而苹果公司认为这并不会影响性能,所以坚持这不是一个缺陷,emmm-- 虽然苹果公司的品控一直为人称道 ...
- STM32-RS232通信软硬件实现
OS:Windows 64 Development kit:MDK5.14 IDE:UV4 MCU:STM32F103C8T6/VET6 AD:Altium Designer 18.0.12 1.RS ...
- 架构师养成记--30.Redis环境搭建
Redis的安装 下载地址http://redis.io/download 安装步骤: 首先需要安装gcc,把下载好的redis-3.0.0-rc2.tar.gz 放到 /usr/local 文件夹下 ...
- springcloud(十)-Zuul微服务网关
为什么要使用微服务网关 前面的文章我们介绍了,Eureka用于服务的注册于发现,Feign支持服务的调用以及均衡负载,Hystrix处理服务的熔断防止故障扩散,Spring Cloud Config服 ...
- [Xamarin] 透過StartActivityForResult傳值回來(转贴)
上一篇文章(開啟另外一個Activity 並且帶資料),提到了開啟一個新的Activity ,我們將值透過intent 帶到下個Activity 但是,如果我們開啟的Actrivity其實是有一個任務 ...
- win8.1中向IIS注册asp.net
以前都是用aspnet_regiis -I 命令向IIS注册asp.net ,今天换了win8.1后竟然发现这招不好使了. 根据提示,需要用dism.exe来完成注册. 折腾一会儿后,问题最终解决: ...