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

本文介绍了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 = $("").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);

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值