ASP.NET AJAX $ find始终在usercontrol中返回null

时间:2010-07-30 08:08:16

标签: asp.net asp.net-ajax

我想在ModalPopUp扩展程序中使用多个目标。我的一个按钮在ModalPopup中设置为目标,另一个将使用服务器端代码显示ModalPopup。

到目前为止,这是我的ModalPopup:

<msAjax:ModalPopupExtender ID="modalInform" runat="server" 
        BehaviorID="modalInform" 
        TargetControlID="btnSearchUsers" 
        PopupControlID="pnlInform" 
        RepositionMode="RepositionOnWindowResize" 
        BackgroundCssClass="modalWindow"
        OkControlID="linkCloseInform" />

然后我在ASP.NET AJAX网站上找到了this little tutorial。 但是当我在pageLoad Javascript函数中使用$ find(“modalInform”)时(在底部的教程中定义),我总是得到$ find(“modalInform”)为null错误。

此代码包含在usercontrol中,usercontrol用于ASPX页面,此ASPX页面使用MasterPage。 我注意到,如果我正在使用

<%= modalInform.ClientID %>

我在HTML源代码中定义了一个不同的值(可能是因为MasterPage?)。

有人知道问题是什么吗?

提前致谢!

2 个答案:

答案 0 :(得分:2)

尝试将ClientID与$ find方法结合使用。

而不是

$find("modalInform") 

试试这个

$find('<%= modalInform.ClientID %>') 

答案 1 :(得分:1)

我尝试了以下示例,我也遇到了同样的错误,例如$ find返回null。 后来我意识到,我错过了&#34; BehaviorID =&#34; AutoCompleteEx&#34;&#34; 属性。

http://forums.asp.net/t/1323927.aspx

$ find(&#34; AutoCompleteEx&#34;)方法中,就像魅力一样。