再ligerDialog中采用Open打开一个窗口对话框,在打开的窗口对话框中就会产生两个问题,父窗口给子窗口传值和子窗口给父窗口传值的问题。
其中父窗口给子窗口传值很简单,只要在父窗口中定义函数或者变量,然后子窗口通过parent.父窗口中的函数或者变量就可以了。
然后子窗口给父窗口传值,采用的方式是通过open中的buttons方法,来实现子窗口函数和变量的调用问题。
父窗口的内容:
$.ligerDialog.open({
height: 350,
width: 300,
title: titltinfo,
url: '../AttendanceGroup/ShowSpecial',
showMax: false,
showToggle: true,
showMin: false,
isResize: true,
slide: false,
isHidden: false,
isSuccessed: false,
onClosed: function (e) { },
buttons: [
{
text: '确定',
onclick: attendSpecialObj.f_importOK
},
{
text: '取消',
onclick: function (item, dialog) {
dialog.close();
}
}
]
})
其中f_importOK是当前界面的方法,传递的是固定的两个参数,item 和 dialog,定义如下:
f_importOK: function (item, dialog) {
var result = dialog.frame.attendSpecialObj.CheckInfo();
//关闭对话框
dialog.close();
},
其中方法中的attendSpecialObj.CheckInfo是子窗口中的方法,通过调用子窗口中的方法实现返回值调用
子窗口的定义如下:
function GetInfo() {
var spaceObj = {};
spaceObj.selectSpaceTime = $("#selectSpaceTime").val();
spaceObj.selectFre = $("#txtSelectFre").val();
spaceObj.spacialReson = $("#txt_SpacialReson").val();
return spaceObj;
}