簡體   English   中英

$ find RadWindowManager對象始終返回null值

[英]$find RadWindowManager object is always returned null value

我有一個奇怪的問題,我無法理解它發生的原因。

在同一個* .ascx文件中,我聲明一個Telerik:RadWindowManager控件,然后調用$find()查找該RadWindowManager。 但是,該方法始終返回空值。

這是代碼(包含在同一* .ascx中):

<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<script type="text/javascript">
function init(){
    GetRWndManager();
}

function GetRWndManager() {
    return $find("<%=rwndManager.ClientID%>"); //return null at this step
}

</script>
<telerik:RadWindowManager ID="rwndManager" runat="server" ShowContentDuringLoad="False" VisibleOnPageLoad="False" EnableShadow="true">
</telerik:RadWindowManager>

確保在Sys.Application.Load事件之后調用init()函數(實際上是GetRWndManager()函數),因為在此之前可能未創建IScriptControl客戶端對象: http : //msdn.microsoft.com/en -us / library / bb383829.aspx

這是一個例子:

function init() {
    GetRWndManager();
    Sys.Application.remove_load(init);
}
Sys.Application.add_load(init);

function GetRWndManager() {
    return $find("<%=rwndManager.ClientID%>");
}

或者,使用setInterval()並檢查是否有對象,直到獲得一個對象或達到最大200次嘗試為止。

另外,請考慮使函數名稱在UC中唯一,以防止頁面上有多個實例時它們相互覆蓋。 以下知識庫將為您提供一個巧妙的想法: http : //www.telerik.com/support/kb/aspnet-ajax/details/using-dynamic-unique-names-for-javascript-functions

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM