您好,我想与您分享我的解决方案,仅使用 Javascript 代码创建 RadWindow 对话框。
我们需要实现两种方法:一种用于初始化 RadWindow 对话框,最后一种用于接收关闭 RadWindow 后返回的参数。您可以在第二步中执行您想要的操作(例如回发,...)
这是我的代码:
初始化 RadWindow 对话框:
function openMyDialog(url, args) {
var manageWindow = GetRadWindowManager();
if (manageWindow) {
var radWindow = manageWindow.open(url, "<your_dialog_name>");
if (radWindow) {
radWindow.set_initialBehaviors(Telerik.Web.UI.WindowBehaviors.None);
radWindow.set_behaviors(Telerik.Web.UI.WindowBehaviors.Move + Telerik.Web.UI.WindowBehaviors.Close + Telerik.Web.UI.WindowBehaviors.Resize);
radWindow.setActive(true);
radWindow.SetModal(true);
radWindow.center();
radWindow.set_visibleStatusbar(false);
radWindow.set_keepInScreenBounds(true);
radWindow.set_minWidth(640);
radWindow.set_minHeight(480);
radWindow.setSize(640, 480);
radWindow.set_destroyOnClose(true);
radWindow.add_close(closeMyDialog);//after closing the RadWindow, closeMyDialog will be called
radWindow.argument = args;//you can pass the value from parent page to RadWindow dialog as this line
}
}
}
关闭 RadWindow 对话框:
function closeMoveProjectDialog(sender, args) {
var objArgs = args.get_argument();
//objArgs variable stored the values returned from the RadWindow
//you can use it for your purpose
}
怎么称呼这个?
您可以将 open 方法放入您期望的方法中。在我这边,我有一个如下所示的方法,我将这样调用 RadWindow:
function ShowForeignKeyFrontEditSingle(param1, param2){
var url = "ForeignKeyFrontEditSingle.aspx";
var objArgs = new Array();
objArgs[0] = param1;
objArgs[1] = param2;
openMyDialog(url, objArgs);
return;
}
当然,你必须声明一个RadWindowManager控件
function GetRadWindowManager() {
return $find("<%=your_radwindow_manager_control.ClientID%>");
}