1. 程式人生 > >window.open()父子視窗傳值

window.open()父子視窗傳值

父視窗html新增隱藏域:

<input type ="hidden" value="${actitityId}" id="activityId">

視窗js在特定時機對隱藏域複製

$("#activityId").val(activityObj.activityId);

父視窗js父視窗開啟子視窗

$("#addProductById").click(function() {
        window.open(configJS.hostUrl()+"/common/getGoodsList");
    });
子視窗js獲取父頁面引數
commonObj.activityId = window.opener.document.getElementById("activityId").value;
子視窗處理完返回父頁,關閉子視窗,呼叫父視窗方法帶回相關引數
if(window.opener) {
                    window.close();
                    window.opener.activityObj.setProductList(commonObj.products);
                }
父視窗接受子視窗處理結果,並繼續往下執行
setProductList : function (products) {//返回查詢結果,並渲染列表
        $("#productList").prepend($("#productListScript").render(products));
        activityObj.products = activityObj.products.concat(products);//兩個數組合並
        $('.favPric').blur(function(){
...其他處理順序執行
        });
    }