如何打开RadWindow

时间:2012-10-15 10:27:42

标签: c# asp.net c#-4.0 telerik c#-3.0

我的代码:

<asp:ImageButton ID="btnAddReport" runat="server" OnClientClick="return AddFavoritePopup()"
ImageUrl="~/Content/images/add_favorite.jpg" Width="24px" Height="20px" 
style="vertical-align:middle"/>

    function AddFavoritePopup() {
    var radWindow = document.getElementById('AddFavoriteRadWindow');
    radWindow.show()
    }

      <telerik:RadWindowManager runat="server" ID="RadWindowManager2" Title="Add Favorite"
            Behaviors="Close" VisibleStatusbar="False" Modal="False">
            <Windows>
                <telerik:RadWindow ID="AddFavoriteRadWindow" Width="500" Height="300" VisibleOnPageLoad="false" CssClass="radwindow" runat="server">
                    <ContentTemplate>
                        <table>
                            <tr>
                                <asp:Label ID="lblFavorite" runat="server" Text="Favorites: "></asp:Label>
                                <asp:TextBox ID="txtReportFavorite" runat="server"></asp:TextBox>
                            </tr>
                            <tr>
                                <asp:Button ID="btnOk" runat="server" Text="OK" Width="50" Height="25" onclick="btnOk_Click" />
                                <asp:Button ID="btnCancel" runat="server" Text="Cancel" Width="50" Height="25" onclick="btnCancel_Click" />
                            </tr>
                        </table>
                    </ContentTemplate>
                </telerik:RadWindow>
            </Windows>
        </telerik:RadWindowManager>

如何在脚本中打开RadWindow。我尝试使用show功能。它没有开放。感谢。

2 个答案:

答案 0 :(得分:2)

试试这个

  var oWnd = $find("<%=AddFavoriteRadWindow.ClientID%>");
    oWnd.show();

或替代

    var oManager = GetRadWindowManager();       
    oManager.open(null, "AddFavoriteRadWindow"); 

答案 1 :(得分:1)

窗口不会出现,因为执行代码时,并非页面上的所有控件都已完全呈现。

您可以采取的措施是使用 Sys.Application.add_load 函数挂钩到 ShowWindow 加载事件的函数,例如:

 protected void Button1_Click(object sender, EventArgs e) 
    { 
        string script = "<script language='javascript' type='text/javascript'>Sys.Application.add_load(ShowWindow);</script>"; 
        ClientScript.RegisterStartupScript(this.GetType(), "showWindoww", script);  
    }

点击here了解有关 Sys.Application.add_load

的更多详情

感谢。