2015-10-15 30 views
0

當我點擊asp.net按鈕按下面的代碼,它進入我的js文件,並獲取功能,因爲我需要,但如果驗證失敗但仍去通過與回傳,如果它是有效的。使用Javascript - 在ASP.Net按鈕,文本框驗證單擊

的asp.net按鈕

<asp:Button ID="bttnSend" runat="server" OnClientClick="DoValidation()" Text="Send" CssClass="btn btn-primary margin30" /> 

的JavaScript

function DoValidation(parameter) { 
console.log("validating"); 
var valid = true; 
var emailTo = document.getElementById("txtEmailTo").value; 
if (emailTo.length < 1) { 
    alert("Please select at least one recipient to send an email to"); 
    valid = false; 
} 

console.log(valid); 
if (valid == true) { 
    __doPostBack('bttnSend', parameter); 
} 

};

我將不勝感激,如果有人能告訴我什麼,我需要改變什麼,以使驗證犯規允許回傳,如果它失敗。

謝謝

+0

檢查此鏈接[http://stackoverflow.com/questions/683746/how-to-disable-回發-ON-AN-ASP-按鈕(http://stackoverflow.com/questions/683746/how-to-disable-postback-on-an-asp-button) – Rosh

回答

4

當條件失敗時,您需要防止按鈕的默認操作。

修改你的函數返回true/false

function DoValidation(parameter) { 
    var valid = true; 
    var emailTo = document.getElementById("txtEmailTo").value; 
    if (emailTo.length < 1) { 
     alert("Please select at least one recipient to send an email to"); 
     valid = false; 
    } 
    return valid; 
}; 

使用的返回值

<asp:Button ID="bttnSend" runat="server" OnClientClick="return DoValidation()" Text="Send" CssClass="btn btn-primary margin30" /> 
+0

謝謝你,我可以接受在10回答根據這個分鐘,所以會盡可能接受 –

相關問題