Hi,
I want to PostBack RadGrid with RadAjaxManager when close RadWindow, but ajaxRequestWithTarget doesn't work in my code below, please help me fix this
ASPX Page
Code-behind:
ConfirmDeleteMany.aspx
I want to PostBack RadGrid with RadAjaxManager when close RadWindow, but ajaxRequestWithTarget doesn't work in my code below, please help me fix this
ASPX Page
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
<html xmlns="http://www.w3.org/1999/xhtml"> |
<head id="Head1" runat="server"> |
<title>Untitled Page</title> |
</head> |
<body> |
<form id="form1" runat="server"> |
<asp:ScriptManager ID="ScriptManager1" runat="server"> |
</asp:ScriptManager> |
<telerik:RadWindowManager ID="RadWindowManager1" runat="server"> |
</telerik:RadWindowManager> |
<telerik:RadCodeBlock ID="RadCodeBlock1" runat="server"> |
<script language="javascript" type="text/javascript"> |
function openConfirmDeleteMany() { |
var oWnd = radopen("ConfirmDeleteMany.aspx", "ConfirmDeleteManyWindow"); |
oWnd.SetSize(400, 200); |
oWnd.SetTitle('Title'); |
oWnd.Center(); |
} |
function OnDeleteWindowClientClose(oWnd, args) { |
if (args) { |
var hdfDeleteOption = document.getElementById("<%= hdfDeleteOption.ClientID %>"); |
hdfDeleteOption.value = args; |
var ajaxManager = $find("<%= RadAjaxManager1.ClientID %>"); |
ajaxManager.ajaxRequestWithTarget('<%= RadGrid1.UniqueID %>', ''); |
} |
} |
</script> |
</telerik:RadCodeBlock> |
<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"> |
<AjaxSettings> |
<telerik:AjaxSetting AjaxControlID="RadGrid1"> |
</telerik:AjaxSetting> |
</AjaxSettings> |
</telerik:RadAjaxManager> |
<asp:HiddenField ID="hdfDeleteOption" runat="server" /> |
<telerik:RadGrid ID="RadGrid1" runat="server" DataSourceID="AccessDataSource1" GridLines="None" |
AllowPaging="true" PageSize="20" AllowSorting="true" Skin="Vista" AllowFilteringByColumn="true" |
OnItemDataBound="RadGrid1_ItemDataBound" OnItemCommand="RadGrid1_ItemCommand"> |
<MasterTableView AutoGenerateColumns="False" DataKeyNames="EmployeeID" DataSourceID="AccessDataSource1"> |
<Columns> |
<telerik:GridBoundColumn DataField="EmployeeID" DataType="System.Int32" HeaderText="EmployeeID" |
ReadOnly="True" SortExpression="EmployeeID" UniqueName="EmployeeID"> |
</telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="LastName" HeaderText="LastName" SortExpression="LastName" |
UniqueName="LastName"> |
</telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="FirstName" HeaderText="FirstName" SortExpression="FirstName" |
UniqueName="FirstName"> |
</telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="Title" HeaderText="Title" SortExpression="Title" |
UniqueName="Title"> |
</telerik:GridBoundColumn> |
<telerik:GridTemplateColumn> |
<ItemTemplate> |
<asp:LinkButton ID="btnDelete" Text="Delete" runat="server" CommandName="cmdDelete" /> |
</ItemTemplate> |
</telerik:GridTemplateColumn> |
</Columns> |
</MasterTableView> |
</telerik:RadGrid> |
<asp:AccessDataSource ID="AccessDataSource1" DataFile="~/App_Data/Nwind.mdb" SelectCommand="SELECT [EmployeeID], [LastName], [FirstName], [Title] FROM [Employees]" |
runat="server"></asp:AccessDataSource> |
</form> |
</body> |
</html> |
Code-behind:
protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e) |
{ |
if (e.Item is GridDataItem) |
{ |
var item = e.Item as GridDataItem; |
var btnDelete = (LinkButton)item.FindControl("btnDelete"); |
btnDelete.OnClientClick = "openConfirmDeleteMany(); return false;"; |
} |
} |
protected void RadGrid1_ItemCommand(object source, GridCommandEventArgs e) |
{ |
if(e.CommandName == "cmdDelete") |
{ |
Response.Write(RadGrid1.MasterTableView.DataKeyValues[e.Item.ItemIndex]["EmployeeID"]); |
} |
} |
ConfirmDeleteMany.aspx
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
<html> |
<head id="Head1" runat="server"> |
<link href="/App_Themes/Administrator/adminStyle.css" rel="stylesheet" /> |
<script src="/Scripts/Portal.js"type="text/javascript" language="javascript"></script> |
</head> |
<body> |
<form id="form1" runat="server"> |
<asp:ScriptManager ID="ScriptManager1" runat="server" /> |
<script language="javascript" type="text/javascript"> |
function GetRadWindow() { |
var oWindow = null; |
if (window.radWindow) oWindow = window.radWindow; |
else if (window.frameElement.radWindow) oWindow = window.frameElement.radWindow; |
return oWindow; |
} |
function returnToParent() { |
if (confirm('Are you sure?')) { |
var comboBox = $find("<%= ddlDeleteOption.ClientID %>"); |
var item = comboBox.get_selectedItem(); |
//alert(item.get_value()); |
//get a reference to the current RadWindow |
var oWndRad = GetRadWindow(); |
var openerPage = oWndRad.BrowserWindow; |
openerPage.OnDeleteWindowClientClose(oWndRad, item.get_value()); |
oWndRad.close(); |
} |
} |
</script> |
<table cellpadding="2" cellspacing="2" border="0" width="100%"> |
<tr> |
<td> |
<telerik:RadComboBox ID="ddlDeleteOption" runat="server"> |
<Items> |
<telerik:RadComboBoxItem Text="Delete One" Value="ONE" /> |
<telerik:RadComboBoxItem Text="Delete All" Value="ALL" /> |
</Items> |
</telerik:RadComboBox> |
</td> |
</tr> |
<tr> |
<td> |
<asp:Button ID="btnSubmit" Text="Submit" runat="server" OnClientClick="returnToParent(); return false;" /> |
</td> |
</tr> |
</table> |
</form> |
</body> |
</html> |