2015-10-14 117 views
0

我這裏有ASP Button的OnClientClick正在兩次單擊按鈕

<asp:Button ID="btnSave" runat="server" Style="margin-left: 22px" Text="Save" CssClass="button" OnClientClick="ValidateFields();" /> 

而這裏的javascript

function ValidateFields() { 
     if ($("#ctl00_cphCimsNewWindow_ddlChannel").val() == '') { 

      $("#ctl00_cphCimsNewWindow_lblErrorIssue").html('This is required'); 

      return false; 

     } 
    } 

但是點擊按鈕後,標籤文字將變爲空。 我試了雙擊,它的工作原理。爲什麼會發生?

+0

顯示此'#ctl00_cphCimsNewWindow_ddlChannel'的html代碼 – Aabid

回答

0

感謝您的幫助,但我改變我的代碼得到的答案OnClientClick

OnClientClick="if (!ValidateFields()) {return false;}" UseSubmitBehavior="false" 
+0

不錯,現在你可以將自己的答案標記爲接受:) – Prabhat

+0

你可以在'OnClientClick'中使用'返回ValidateFields();' – Bharadwaj

0

你應該在你的函數調用中使用return

<asp:Button ID="btnSave" runat="server" Style="margin-left: 22px" Text="Save" CssClass="button" OnClientClick="return ValidateFields();" /> 

,並返回true,如果你的邏輯滿足條件

function ValidateFields() { 
    if ($("#ctl00_cphCimsNewWindow_ddlChannel").val() == '') { 
     $("#ctl00_cphCimsNewWindow_lblErrorIssue").html('This is required'); 
     return false; 
    } 
    return true; 
}