layUI使用layer.open,在content打开数据表格,获取值并返回的方法

在layUI编写的页面中,遇到这么一种情况,从一个页面中使用layer.open打开一个新窗口,新窗口中是一个数据表格,现在需要选中数据表格中的一列并获取它的值,以便下面这个选择按钮可以使用这个值进行后一步的操作。

如简单的选中之后显示选中数据的id。

首先在当前原始页面上,定义一个工具条

<button class="layui-btn" data-type="simulatePack">模拟</button>

在实现这个工具条的点击操作--打开一个新的窗口

simulatePack: function(){ //模拟操作

var checkStatus = table.checkStatus('box')

,data = checkStatus.data;

layer.open({

type:2

,area: ['800px', '600px']

,title:'请选择'

,content: 'container.html'

,maxmin: true

,btn: ['确认选择', '关闭']

,yes: function(index, layero){

var row = window["layui-layer-iframe" + index].callbackdata();

layer.alert("get:"+row);

// var row = $(layero).find("layui-layer-iframe")[0].contentWindow.callbackdata();

//可以使用ajax请求对数据进行进一步处理

layer.close(index);

},btn2: function(index, layero){

layer.close(index);

}

})

},

这里的row是从新打开的窗口中返回的值。

在新窗口中,我定义了一个conId作为返回值,具体如下

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title>layui</title>

<meta name="renderer" content="webkit">

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">

<link rel="stylesheet" href="/layuiadmin/layui/css/layui.css" rel="external nofollow" media="all">

</head>

<body>

<table class="layui-hide" id="container" lay-filter="container"></table>

<script src="/layuiadmin/layui/layui.js" charset="utf-8"></script>

<script>

var conId;

layui.use('table', function(){

var table = layui.table;

table.render({

elem: '#container'

,url:'/container/listAll'

,page:true

,cols: [[

{type:'radio'}

,{field:'id', title: 'ID'}

,{field:'length', title: '长度'}

,{field:'width', title: '宽度'}

,{field:'height', title: '高度'}

,{field:'weightLimit', title: '承重限制'}

,{field:'volumn', title: '体积'}

,{field:'height', title: '高度'}

]]

});

//监听行单击事件(单击事件为:rowDouble)

table.on('row(container)',function(obj){

var data = obj.data;

conId = data.id;

//标注选中样式

obj.tr.addClass('layui-table-click').siblings().removeClass('layui-table-click');

});

});

var callbackdata = function () {

return conId;

}

</script>

</body>

</html>

这样就实现了从content中的页面中返回值的功能。

以上这篇layUI使用layer.open,在content打开数据表格,获取值并返回的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

以上是 layUI使用layer.open,在content打开数据表格,获取值并返回的方法 的全部内容, 来源链接: utcz.com/z/359124.html

回到顶部