這次帶給大家layui彈窗內視窗之間怎樣傳參數,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 = $("<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); }
相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!
推薦閱讀:
以上是layui彈窗內窗之間怎樣傳參數的詳細內容。更多資訊請關注PHP中文網其他相關文章!