使用RadWindowManager是一种简单的方法来为页面上的多个窗口声明公共属性。您可以在RadWindowManager内声明多个RadWindow控制,然后通过下面的函数访问窗口的集合:
var windowManager = $find('<%= MyRadWindowManager.ClientID %>'),
windows = windowManager.get_windows(),
wnd,
i = 0;
for (; i < windows.length; i++) {
wnd = windows[i];
// do something with the RadWindow object
}
要小心,不要叫RadWindow变量“窗口”,因为这将与全球window
对象发生冲突。
如果你想有一个特定的RadWindow对象,可以使用下面的代码:
var windowManager = $find('<%= MyRadWindowManager.ClientID %>'),
wnd = windowManager.getWindowByName("MyWindow");
// do something with the RadWindow object
或者说,我喜欢在我的母版页定义单一RadWindowManager,没有窗户定义,然后简单地根据需要使用它来动态打开窗口。这里有一个例子:
<telerik:RadWindowManager ID="MasterWindowManager" runat="server"
VisibleOnPageLoad="false"
VisibleStatusbar="false"
Behaviors="Close, Move"
DestroyOnClose="true" >
</telerik:RadWindowManager>
专页上的定义RadWindowManager会radopen
功能添加到全局window
对象。你可以用它动态地根据需要打开新的RadWindows ...
var showCustomerDetails = function (customerId) {
var url = String.format("/Views/CustomerDetails.aspx?cid={0}", customerId),
wnd = window.radopen(url);
wnd.set_modal(true);
wnd.setSize(600, 400);
wnd.show();
wnd.center();
}
我希望有帮助。
这个答案很棒。我在我的网页上宣布了一位radwindowmanager,并且很长时间以来一直在思考为什么它不起作用。事实证明,我在另一个radwindowmanager应该被宣布进入radwindow的主页上。 – 2012-10-17 17:23:43