layer 选中表单数据,返回给上一个页面
时间: 2024-02-20 11:57:18 浏览: 21
如果您使用 `layer` 弹出层选择表单数据后,需要将选中的数据返回给上一个页面,可以按照以下步骤进行操作:
1. 在弹出层中,定义一个函数,用于获取选中的数据并将数据传递回上一个页面。例如:
```javascript
function selectData() {
// 获取选中的数据
var selectedData = {
// ...
};
// 将选中的数据传递回上一个页面
parent.layerCallback(selectedData);
}
```
在这个函数中,您需要获取选中的数据,并调用 `parent` 对象的 `layerCallback` 方法将数据传递回上一个页面。`parent` 对象表示当前页面的父页面,也就是打开当前页面的页面。
2. 在上一个页面中,定义一个函数,用于接收从弹出层传递回来的数据。例如:
```javascript
function layerCallback(selectedData) {
// 处理选中的数据
// ...
}
```
在这个函数中,您需要处理传递回来的数据,并将数据保存到需要的地方。
3. 在打开弹出层的代码中,使用 `iframe` 的方式打开弹出层,并设置 `layerCallback` 函数。例如:
```javascript
layer.open({
type: 2,
title: '选择数据',
content: 'select_data.html',
area: ['800px', '600px'],
end: function() {
// 弹出层关闭后执行的操作
},
success: function(layero, index) {
// 弹出层加载完成后执行的操作
var body = layer.getChildFrame('body', index);
body.find('button.confirm').on('click', function() {
// 点击确定按钮后执行的操作
body.get(0).contentWindow.selectData();
});
}
});
```
在这个代码中,我们设置了 `success` 回调函数,在弹出层加载完成后执行一些操作。在这个回调函数中,我们获取弹出层的 `body` 对象,并找到确认按钮的 `click` 事件。当用户点击确认按钮时,我们调用弹出层中的 `selectData` 函数,获取选中的数据并将数据传递回上一个页面。
通过以上步骤,您就可以在弹出层中选择表单数据,并将选中的数据传递回上一个页面了。希望这个回答能够对您有所帮助!