1. 程式人生 > >miniUI 使用 mini.open 傳輸資料到 新頁面

miniUI 使用 mini.open 傳輸資料到 新頁面

mini.open({
                url: "<%=path%>/vacnstandard/modifyDetail.action",
                title: "<s:text name="vacnstandard_46"></s:text>", width: 450, height: 400,//修改加班資訊
                onload: function () {
                    var iframe = this.getIFrameEl();
                    var data = {
                        name: name,
                        SID: SID,
                        START_TIME: START_TIME,
                        END_TIME: END_TIME,
                        COMPENSATION: COMPENSATION,
                        OVER_NUM: OVER_NUM,
                        OVER_TYPE: OVER_TYPE
                    };
                    //呼叫彈出頁面方法進行初始化
                    iframe.contentWindow.SetData(data);
                },
                ondestroy: function (action) {
                    grid.reload();
                }
            });

以上程式碼中  onload  方法的格式為 miniUI 官網所示的格式,下圖所示:

其中,data : { xx:xx } 為要傳輸到新頁面的資料。

最重要的是開啟的新頁面如何接收這些引數?

還是看程式碼吧 !

//對應上個頁面的mini.open中的SetData() 函式,本頁面的SetData()會自動執行,無需主動呼叫
    function SetData(data) {
        sid = data.SID;
        mini.get("perName").setValue(data.name);
        mini.get("startTime").setValue(data.START_TIME);
        mini.get("endTime").setValue(data.END_TIME);
        mini.get("CompensationWay").setValue(data.COMPENSATION);
        mini.get("durationTime").setValue(data.OVER_NUM);
        mini.get("OvertimeCategories").setValue(data.OVER_TYPE);
    }

答案就是直接定義一個SetData(data) 方法即可,而且不需要去主動呼叫,它會自動去執行。

而引數的獲取方式為  data.引數名