This is a migrated thread and some comments may be shown as answers.

Opening radWin from existing radWin, can't set_behaviors

1 Answer 164 Views
Window
This is a migrated thread and some comments may be shown as answers.
Blake Marriner
Top achievements
Rank 1
Blake Marriner asked on 20 Mar 2009, 06:57 PM
Hi,
Using Version=2009.3.311
I'm attempting to open a second radWin from an existing one using the current window BrowserWindow.radopen type method, I run into a JS error when calling set_behaviors on the new window. ("Telerik is undefined..")

A simple case example would be 3 aspx pages (Default.aspx, Default2.aspx, Default3.aspx) ....

----------------------------------------------------------------------------------------
Parent page (Default.aspx)....contents

     <asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>
        <telerik:RadWindowManager ID="RadWindowManager1" runat="server">
        </telerik:RadWindowManager>
        <telerik:RadWindow ID="RadWindow1" runat="server" NavigateUrl="Default2.aspx" OpenerElementID="LinkButton1">
        </telerik:RadWindow>
        <asp:LinkButton ID="LinkButton1" runat="server" OnClientClick="return false;">Open rWin1</asp:LinkButton>

1st radWin (Default2.aspx) contents...

<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 fnOID1() { var oW = null; var oBrowserWnd = GetRadWindow().BrowserWindow; oW = oBrowserWnd.radopen('Default3.aspx', null); oW.setSize(750, 325); oW.set_modal(true); setTimeout(function() { oW.setActive(true); }, 0); }
    function fnOID2() { var oW = null; var oBrowserWnd = GetRadWindow().BrowserWindow; oW = oBrowserWnd.radopen('Default3.aspx', null); oW.set_behaviors(Telerik.Web.UI.WindowBehaviors.Move + Telerik.Web.UI.WindowBehaviors.Close); oW.setSize(750, 325); oW.set_modal(true); setTimeout(function() { oW.setActive(true); }, 0); }
</script>
.....
        rWin1
        <br />
        <asp:LinkButton ID="LinkButton1" runat="server" OnClientClick="fnOID1(); return false;">Open rWin2_nobehaviors</asp:LinkButton>
        <br />
        <asp:LinkButton ID="LinkButton2" runat="server" OnClientClick="fnOID2(); return false;">Open rWin2</asp:LinkButton>

2nd radWin (Default3.aspx) contents...
some text...

----------------------------------------------------------------------------------------

Any help would be much appreciated.


1 Answer, 1 is accepted

Sort by
0
Accepted
Fiko
Telerik team
answered on 23 Mar 2009, 06:05 PM
Hi Blake,

The problem occurs because you do not have reference to the Telerik.Web.UI.dll file on the content page. The one possible solution of the issue is to add reference to that dll  in the content page. The second is to use the reference to the parent page as follow :

function fnOID2() 
    var oW = null
    var oBrowserWnd = GetRadWindow().BrowserWindow; 
    oW = oBrowserWnd.radopen('Default3.aspx'null); 
    oW.set_behaviors(oBrowserWnd.Telerik.Web.UI.WindowBehaviors.Move + oBrowserWnd.Telerik.Web.UI.WindowBehaviors.Close); 
    oW.setSize(750, 325); oW.set_modal(true); 
    setTimeout( 
  function() 
  { 
      oW.setActive(true); 
  }, 0); 

I hope this helps.

Best regards,
Fiko
the Telerik team

Check out Telerik Trainer , the state of the art learning tool for Telerik products.
Tags
Window
Asked by
Blake Marriner
Top achievements
Rank 1
Answers by
Fiko
Telerik team
Share this question
or