Hello,
I realize that this issue is not new to the forum. Unfortunately I haven't been able to find a resolution to my problem in the previous threads.
I have followed structure in my Application:
1. Web site with Usercontrol_1 (loaded in placeholder dynamically)
1.1. RadWindow_1 can be called from Usercontrol_1 und returned a value to it.
2 Usercontrol_1 contents on his part Usercontrol_2 (also loaded dynamically).
2.1. Usercontrol_2 called RadWindow_2 und received from it returned value. But this works only first time. The second time around
oWnd.BrowserWindow.refreshRadGrid_2(oArg) not worked. RadGrid_2 is placed onto Usercontrol_2.
If I try to call instead of refreshRadGrid_2 another function refreshLabel (also refresh Label, resided onto Usercontrol_1) its work perfectly any time.
Here is part of my code:
Usercontrol_1 (works fine):
#################
<telerik:radscriptblock id="RadScriptBlock1" runat="server">
<script type="text/javascript">
function ShowWndFallSuchen() {
var oWnd = radopen('Suche.aspx', 'RadWindow1');
}
function refreshLabeFallNr(arg) {
if (!arg) {
alert("Keine args");
}
var ajaxManager = $find("<%= RadAjaxManager1.ClientID %>");
if (ajaxManager != null) {
ajaxManager.ajaxRequest(arg.RetVal);
}
else {
$create(Telerik.Web.UI.RadAjaxManager, null, null, null, $get("<%= RadAjaxManager1.ClientID %>"));
ajaxManager = $find("<%= RadAjaxManager1.ClientID %>");
ajaxManager._uniqueID = $get("<%= btnSpeichern.ClientID %>").id.replace('btnSpeichern', 'RadAjaxManager1');
ajaxManager._uniqueID = ajaxManager._uniqueID.replace(/_/g, '$');
var lbl = $get("<%= lblBezugFallNr.ClientID %>");
ajaxManager.ajaxRequest(arg.RetVal);
}
}
</script>
</telerik:radscriptblock>
<telerik:radajaxmanager id="RadAjaxManager1" runat="server" onajaxrequest="RadAjaxManager1_AjaxRequest">
<ajaxsettings>
<telerik:AjaxSetting AjaxControlID="RadAjaxManager1">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="lblBezugFallNr" />
</UpdatedControls>
</telerik:AjaxSetting>
<telerik:AjaxSetting AjaxControlID="lblBezugFallNr">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="lblBezugFallNr" />
</UpdatedControls>
</telerik:AjaxSetting>
</ajaxsettings>
</telerik:radajaxmanager>
#################
Seite1.aspx (placed onto RadWindow1 and works fine)
#################
<telerik:RadScriptBlock ID="RadScriptBlock1" runat="server">
<script type="text/javascript">
function returnToParent() {
var rtbFallNr = document.getElementById("rtbFallNr");
var fallNr = rtbFallNr.value;
var oArg = new Object();
oArg.RetVal = fallNr;
var oWnd = GetRadWindow();
oWnd.close(oArg);
if (fallNr.trim() != "") {
oWnd.BrowserWindow.refreshLabeFallNr(oArg);
}
else {
alert("Keine Treffer");
}
}
function GetRadWindow() {
var oWindow = null;
if (window.radWindow) oWindow = window.radWindow;
else if (window.frameElement.radWindow) oWindow = window.frameElement.radWindow;
return oWindow;
}
</script>
</telerik:RadScriptBlock>
#################
Usercontrol_2 (That is embedded onto Usercontrol_1). Worked only first time.
#################
<telerik:RadScriptBlock ID="RadScriptBlock1" runat="server">
<script type="text/javascript">
function ShowWndBeteiligter() {
var oWnd = radopen('../CreateEdit/Beteiligter.aspx', 'RadWindow2');
}
function refreshGrid(arg) {
if (!arg) {
$find("<%= RadAjaxManager1.ClientID %>").ajaxRequest("empty");
}
else {
$find("<%= RadAjaxManager1.ClientID %>").ajaxRequest(arg.RetVal);
}
}
</script>
</
telerik:RadScriptBlock>
<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server" OnAjaxRequest="RadAjaxManager1_AjaxRequest">
<AjaxSettings>
<telerik:AjaxSetting AjaxControlID="RadAjaxManager1">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="RadGridBeteiligen" /
<telerik:AjaxUpdatedControl ControlID="lblTest" />
</UpdatedControls>
</telerik:AjaxSetting>
</AjaxSettings>
</telerik:RadAjaxManager>
#################
Seite2.aspx (placed onto RadWindow2). Worked only first time, afterwards stops at oWnd.BrowserWindow.refreshGrid(oArg);
#################
<telerik:RadScriptBlock ID="RadScriptBlock1" runat="server">
<script type="text/javascript">
function returnToParent() {
var rtbName = document.getElementById("rtbName");
var name = rtbName.value;
var oArg = new Object();
oArg.RetVal = fallNr;
var oWnd = GetRadWindow();
oWnd.close(oArg);
if (fallNr.trim() != "") {
oWnd.BrowserWindow.refreshGrid(oArg);
}
else {
alert("Keine Treffer");
}
}
function GetRadWindow() {
var oWindow = null;
if (window.radWindow) oWindow = window.radWindow;
else if (window.frameElement.radWindow) oWindow = window.frameElement.radWindow;
return oWindow;
}
</script>
</telerik:RadScriptBlock>
#################