2011-09-19 42 views
0

我無法調用一個ASP的onload事件的JavaScript功能按鈕:按鈕無法調用JavaScript函數的onload一個ASP:使用ASP.NET4

HTML

<asp:Button ID="btnFromCalOpen" runat="server" Text=" &gt; " onLoad = "AllHide()" OnClientClick ="ShowCal()" /> 

的Javascript

function AllHide() { 
     alert("Hello"); 
    } 

請幫忙

+0

我想隱藏asp:button而不使用CSS或serverside編碼。如何隱藏這個加載控件,並感謝您的回覆。 – Nabeel

+0

請參閱下文,您需要使用'style'屬性隱藏控件。雖然這仍然是CSS,但您可以使用JavaScript直接控制它 – Kirk

回答

1

您將需要使用JavaScript切換樣式,就像你在嘗試摹

<asp:Button ID="btnFromCalOpen" runat="server" Text="" OnClientClick ="ShowCal()" style="display:none;visiblity:hidden;" /> 

原文評論使用JavaScript任何按鈕你不能這麼做onLoad。你希望完成什麼?我們可以幫助找出解決方案。

+0

我想隱藏asp:button而不使用CSS或服務器端編碼。如何隱藏這個加載控件,並感謝您的回覆。 – Nabeel

+0

再次感謝科克的風格工作可見= Flase不會工作,因爲那時我不能從Javascript中撤回它:) – Nabeel

+0

使用CSS有什麼問題? – JohnFx

0

你不能那樣做。

這是爲什麼。在ASP.NET中,控件的OnLoad事件在服務器正在構建頁面時(在Web服務器上),但在將其發送到瀏覽器(在用戶的計算機上運行)之前觸發。

Web服務器上的代碼無法直接調用瀏覽器計算機上的代碼(它甚至還沒有獲得頁面)。

如果你只想隱藏控制,只是這樣做在你的標記:

<asp:Button ID="btnFromCalOpen" runat="server" Text=" &gt; " visible="false" OnClientClick ="ShowCal()" /> 

另一種方法(隱藏控件不佔用空間):

<asp:Button ID="btnFromCalOpen" runat="server" Text=" &gt; " style="display:none;" OnClientClick ="ShowCal()" /> 

另一種方法(隱藏控件佔用空間)

<asp:Button ID="btnFromCalOpen" runat="server" Text=" &gt; " style="visibility:hidden;" OnClientClick ="ShowCal()" /> 
+0

如果我設置visible = false,那麼javascript將不會再使其可見 – Nabeel

+0

然後只需將其設置爲元素上的樣式即可。堅持下去,爲我的答案增加一個例子。 – JohnFx

0

您可以在頁面級別執行此操作。該頁面有一個javascript onload事件。