我在我的aspx主页中有一个RadGrid,它允许用户在点击图片(在RadGrid中)时打开一个RadWindow。
当我关闭RadWindow时,我需要重新绑定我的RadGrid。问题是我不在同一页上。因此,我不能访问我的RadWindow页面中的RadGrid。
有没有办法在CloseDialog中添加指令来重新绑定RadGrid?
这是我用来关闭RadWindow的代码。
function GetRadWindow() {
var oWindow = null;
if (window.radWindow) oWindow = window.radWindow;
else if (window.frameElement.radWindow) oWindow = window.frameElement.radWindow;
return oWindow;
}
function CloseDialog() {
GetRadWindow().close();
return true;
}发布于 2012-03-21 20:58:04
试试这个:
在radWindow中,您将获得一个名为OnClientClose的客户端事件,您可以轻松地调用该窗口并重新绑定网格。请看下面我所做的:
<telerik:RadWindow runat="server" Behaviors="Maximize,Close,Move" ID="editorWindow"
VisibleStatusbar="false" Width="800px" ReloadOnShow="true" ShowContentDuringLoad="false"
OnClientClose="OnWindowClose" Modal="true" Height="500px" />下面是JS函数:
function OnWindowClose(sender, eventArgs) {
var MasterTable = gridID.get_masterTableView();
MasterTable.rebind();
}注意:在父页面的pageLoad上,我已经像这样分配了gridID。你也可以直接在OnWindowClose函数中查找/获取网格,因为我的场景有点不同。
发布于 2012-03-23 14:08:26
您还可以使用以下代码为特定行触发itemcommand。
function ClientClose(oWnd, args) {
if (oWnd != null && oWnd.get_name() == "checkwindowname") {
var grid = $find("<%=Radgrid1.ClientID %>");
if (grid) {
var MasterTable = grid.get_masterTableView();
var Rows = MasterTable.get_dataItems();
for (var i = 0; i < Rows.length; i++) {
var row = Rows[i];
// put your codition here if you want
MasterTable.fireCommand("YourCommandName", i);
}
}
}
}https://stackoverflow.com/questions/9803405
复制相似问题