JavaScript

超轻量级php框架startmvc

详解layui弹窗父子窗口之间传参数的方法

更新时间:2020-06-24 08:54:02 作者:startmvc
本文介绍了layui弹窗父子窗口之间传参数的方法,分享给大家,具体如下:1、父页面打开子

本文介绍了layui弹窗父子窗口之间传参数的方法,分享给大家,具体如下:

1、父页面打开子页面并向子页面传参数


function setChooseValues(ret){ 
 var oView = document.getElementById("userName"); 
 var oValue = document.getElementById("userIds"); 
 var i = 0; 
 if( ret != null){ 
 oValue.value=""; 
 oView.value=""; 
 oView.title=""; 
 for( x in ret){ 
 i++; 
 oView.title=oView.title + ret[x].name+","; 
 oValue.value=oValue.value+ret[x].id+","; 
 oView.value = oView.value+ret[x].name+"\n"; 
 } 
 if(i==0){ 
 oView.value=""; 
 } 
 } 
 } 
 function OpenFrame( oValue, oView) { 
 var dialogArgumentsA = new Array(oValue.value , spitToString(oView)); 
 var url = "${rootPath}/page/system/roleallot/role_allot.jsp"; 
 layer.open({ 
 type: 2, 
 skin: 'layui-layer-lan', 
 title: '选择人员', 
 fix: false, 
 shadeClose: false, 
 maxmin: true, 
 id:'selectUser', 
 move: false, 
 closeBtn:2, 
 //以下代码为打开窗口添加按钮 
 /* btn: ['确定', '取消'], 
 btnAlign: 'c', 
 yes: function(index, layero){ 
 /* //layer.closeAll();//关闭所有弹出层 
 //var parentWin = layero.find('iframe')[0]; 
 var parentWin = layer.getChildFrame('body', index); 
 alert(parentWin); 
 parentWin.contentWindow.doOk(); 
 //layer.close(index);//这块是点击确定关闭这个弹出层 
 }, */ 
 area: ['750px', '450px'], 
 content: url, 
 success: function(layero, index){ 
 var body = layer.getChildFrame('body', index); 
 var iframeWin = window[layero.find('iframe')[0]['name']]; //得到iframe页的窗口对象,执行iframe页的方法:iframeWin.method(); 
 var ids = dialogArgumentsA[0].split(","); 
 var names = dialogArgumentsA[1].split(","); 
 for (var i = 0; i < ids.length; i++ ) { 
 if ('' != ids[i]) { 
 var option = $("<option>").val(ids[i]).text(names[i]); 
 body.find('select').append(option); 
 } 
 } 
 } 
 }); 
 } 

2、子页面向父页面传参数并关闭弹窗


function newBuildReturnValue(selectName){ 
 var ret = new Array(); 
 
 $("#"+selectName+" option").each(function(){ 
 
 //遍历所有option 
 var value = $(this).val(); //获取option值 
 var text = $(this).text(); 
 if(text!=''){ 
 var o = new Element(value, text, 0); 
 ret.push(o); 
 } 
 }); 
 return ret; 
 } 
 //点击确定向子页面传参并关闭窗口 
 function doOk(){ 
 var ret = newBuildReturnValue("select"); 
 parent.setChooseValues(ret); 
 var index = parent.layer.getFrameIndex(window.name); 
 parent.layer.close(index); 
 } 
 
 //点击取消关闭窗口 
 
 function doCancel(){ 
 var index = parent.layer.getFrameIndex(window.name); 
 parent.layer.close(index); 
 } 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

layui 父子传值 layui 父子页面传值 layui向弹窗传参数