2016-01-13 101 views
0

我的意图是当我点击一个按钮,并在加载时将其链接到另一个aspx页面时,弹出一个模式窗口。我有以下代码:页面加载时弹出的模式

<script type="text/javascript"> 
    function showLoading() { 
     $find('mpbLoading').show(); 
     $find('mpbLoading')._layout(); 
    } 
    function hideLoading() { 
     $.find('mpbLoading').hide(); 
     $.find('mpbLoading')._layout(); 
    } 
</script> 
</asp:Content> 
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server"> 

<asp:LinkButton ID="LinkButton1" runat="server" OnClick="LinkButton1_Click" OnClientClick="showLoading()">LinkButton</asp:LinkButton> 
</asp:Content> 

还有cs文件定义显示和隐藏功能。但是,当我运行网站时,它给出了一个例外:

JavaScript运行时错误:无法获取未定义或空引用的属性“显示”,并突出显示 $ find('mpbLoading')。show();

我做错了什么?我可以用什么方法来完成模态弹出?我能够将问题追溯到MicrosoftAjax.js。它总是返回null。

谢谢!

+1

是什么'mpbLoading'?一个id,一个类,一个节点名? – Thomas

+0

哦对不起。它是这样定义的:protected global :: AjaxControlToolkit.ModalPopupExtender mpeLoading; – Michael

回答

1

而不是$find('mpbLoading').show();使用$.find('mpbLoading').show();

+0

我试过了。但不是给我空引用错误,它只是说$是不确定的? – Michael

+0

然后你可能没有引用jquery,或者它在错误的地方被引用。 –

+0

我引用jquery是这样的:src =“/ Scripts/jquery-1.7.1.js。然后它给出错误说明showLoading没有被定义,但我明确地定义了它? – Michael