2012-09-27 35 views
0

我生成了一個帶有加載另一個頁面的ASP按鈕的頁面。當OnClientClick丟失時,ASP Button不起作用

<asp:Button ID="ServerCredentials" runat="server" Text="Server Credentials" Font-Names="Verdana" Font-Size="12px" OnClick="Credential_Click" Width="135px"/> 

功能,加載其他頁面:

Protected Sub Credential_Click(ByVal sender As Object, ByVal e As System.EventArgs) 
     Response.Redirect("~/WebPage/Booking/ExchangeServer.aspx") 
    End Sub 

此代碼只有當我與交換數據的頁面上註冊工作。

當我沒有註冊,沒有任何反應。

但是,如果我把一個onclientclick與任何功能,它再次工作。 這樣的:

<asp:Button ID="ServerCredentials" runat="server" Text="Server Credentials" Font-Names="Verdana" Font-Size="12px" OnClientClick="return CheckDateVonBis()" OnClick="Credential_Click" Width="135px"/> 

是什麼的onclick和的OnClientClick之間的區別?

我該如何解決這個問題?

+0

OnClick應該在服務器上發生,而OnClientClient應該在瀏覽器上調用某些東西(通常是Javascript)。 「通過交換數據在頁面上註冊」是什麼意思? – RQDQ

回答

3

onclick for server side functiononclientclick for client side

的OnClientClick:如果你想調用javascript函數

鏈接:http://msdn.microsoft.com/fr-fr/library/system.web.ui.webcontrols.button.onclientclick(v=vs.80).aspx

的OnClick:如果你希望落後於服務器端聲明的函數調用代碼

鏈接:http://msdn.microsoft.com/fr-fr/library/system.web.ui.webcontrols.button.onclick.aspx

+0

謝謝,函數是否可以阻止onclick函數?因爲在我輸入我的exchangecredentials後,它再次有效 –

+0

我很樂意幫助你Eray,你可以提交代碼 –

+0

我無法上傳整個代碼,因爲它太長了。但有沒有任何功能或方法,禁用所有的ASP按鈕?那麼我可以搜索它 –

0

而不是Response.R edirect你可以嘗試

Server.TransferRequest("~/WebPage/Booking/ExchangeServer.aspx") 
0

我找到了解決辦法:

我只需要設置爲FALSE的CausesValidation來解決這個問題:

<asp:Button ID="ServerCredentials" runat="server" Text="Server Credentials" Font-Names="Verdana" Font-Size="12px" CausesValidation="False" OnClick="Credential_Click" Width="135px"/> 

我看起來像這樣的網站需要驗證運行函數