首页 > 语言 > JavaScript > 正文

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

2024-05-06 15:22:38
字体:
来源:转载
供稿:网友

本文介绍了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);    }              
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选