A:主頁面,B:父頁面(新增頁面),C:子頁面(在B頁面基礎繼續打開的頁面)
全程只需要B、C頁面操作即可
一、方法1
1、打開C頁面,可以用 layer.open 傳值,那么注定C頁面會套在B頁面其中,
2、B頁面有個隱藏域,用於接收id
<input style="display: none" id="guid" name="guid"/>
3、C頁面選擇一條信息回調B
function chooseP(guid) {
parent.getPeopleID(guid);
parent.layer.closeAll();
}
4、B頁面獲取C頁面id方法
function getPeopleID(guid) {
console.log(guid)
}
二、方法2
1、如果 C頁面比B頁面大呢?那么接下來可以這樣做
2、B頁面有個隱藏域,用於接收id
<input style="display: none" id="guid" name="guid"/>
3、打開C頁面的時候j就可以用 parent.layer.open,需要另外傳一個window.name,如下
function chooseP() {
parent.layer.open({
type : 2,
title : '人員信息',
shadeClose : true,
shade : 0.4,
zIndex:window.top.layer.zIndex,
area : [ '1313px', '661px' ],
content : sys_ctx +'/common/GridManChoose/GridManChoose.jsp?parentname='+window.name,
});
return false;
}
4、C頁面jsp也需要接收
<script type="text/javascript"> var parentname='${param.parentname}'; </script>
5、然后回調B頁面
function chooseG(guid) {
window.top.$("#"+parentname)[0].contentWindow.$("#guid").val(guid);
var index = parent.layer.getFrameIndex(window.name);//用作B頁面的參數
parent.layer.close(index);關閉C 回到B
}
好了,完成。