layui父窗口拿到子窗口的json数据
时间: 2023-11-15 10:39:38 浏览: 234
在layui中,父窗口可以通过子窗口的iframe元素来获取子窗口的json数据。你可以使用以下方法:
1. 在父窗口中,使用layui的layer.open()方法打开子窗口,并将子窗口的URL指定为一个页面,该页面返回要传递给父窗口的json数据。
2. 在子窗口的页面中,通过父窗口的window对象的layer.getFrameIndex()方法获取当前子窗口的索引。
3. 使用layui的layer.getChildFrame()方法获取子窗口的iframe元素。
4. 使用iframe元素的contentWindow属性获取子窗口的window对象。
5. 在父窗口中,通过子窗口的window对象来获取子窗口中的json数据。
下面是一个示例代码:
在父窗口中:
```javascript
// 打开子窗口
layer.open({
type: 2,
title: '子窗口',
content: 'child.html',
area: ['500px', '300px'],
success: function(layero, index){
// 获取子窗口的索引
var childIndex = layer.getFrameIndex(layero.find('iframe')[0]);
// 获取子窗口的iframe元素
var iframe = layer.getChildFrame('body', childIndex);
// 获取子窗口的window对象
var childWindow = iframe[0].contentWindow;
// 在父窗口中获取子窗口的json数据
var jsonData = childWindow.getJsonData();
console.log(jsonData);
}
});
```
在子窗口的child.html页面中:
```javascript
// 子窗口中的代码
function getJsonData() {
// 返回要传递给父窗口的json数据
return {
name: 'John',
age: 25,
city: 'New York'
};
}
```
请注意,这只是一个简单的示例,你可以根据自己的需求进行相应的修改。
阅读全文