2011-07-22 98 views
1

我希望這個ASP按鈕控制在JavaScript客戶端方法IsCorrectPrice()返回false時停止調用其事件處理程序。防止從JavaScript引發代碼隱藏事件?

<asp:Button ID="btnsubmit" runat="server" 
      Text="Submit" OnClientClick="javascript:IsCorrectPrice()"/> 


btnsubmit_Click(ByVal sender As Object, ByVal e As System.EventArgs) 
    Handles btnsubmit.Click 

這怎麼辦?

回答

4

更改OnClientClick是這樣的:

OnClientClick="return IsCorrectPrice();" 
+0

只是'返回IsCorrectPrice();'就夠了 – Ghostoy

+0

非常感謝p.campbell和Ghostoy,你的答案都是可行的! :) – Liz

+0

@利茲:謝謝!一定要使用綠色複選標記來接受所有StackOverflow問題的答案。這是聲譽系統的一部分。 –

0

如果你有使用jQuery的選項,你可以使用這個..

$("#btnsubmit").click(function() { 
    if (!IsCorrectPrice()) { 
     e.preventDefault(); 
    } 
}); 

*注:

使用OnClientClick在DOM中,在最基本的場景之後開始變得難以維護。

此外,#btnsubmit可能不是您的按鈕的確切ID,但這取決於您使用的是什麼版本的ASP.Net,如果您使用4,您的ClientIdMode設置爲。

+0

非常感謝ar3,當我使用jQuery時,我會牢記這一點。 :) – Liz