我在JavaScript中創建了一個validate()
函數,當我調用該方法時,它返回undefined
....我的代碼中的所有東西看起來都對我來說,它爲什麼這樣做?爲什麼我的價值在jquery中返回?
function validate() {
var __self = this;
__self.is_valid = true;
$(document).on("click", "#login,#create_account", function() {
var email = $("#email").val(),
password = $("#password").val();
if (email == "") {
$("#email-err-msg").removeClass("hidden").html("Enter an email address");
__self.is_valid = false;
} else {
$("#email-err-msg").addClass("hidden")
}
return __self.is_valid;
});
}
(function logUser() {
$(document).on("submit", "form", function() {
var action = $(".action").attr("data-account-action");
console.log(validate());
if (!validate()) {
return false;
}
});
})();
尋求幫助時,如果以簡潔易讀的方式呈現您的代碼,這將非常有用。上面的格式非常不一致,很多沒有意義的空白行導致塊在不需要時滾動,沒有明顯原因的奇數長空格系列(如'var action ='之後)等等(我已經在這種情況下爲你修復它。) –
代碼沒有多大意義。你爲什麼在一個函數中掛接一個事件處理函數,以便在響應某個事件時被調用? –
@ T.J.Crowder你是對的。我甚至沒有意識到我做錯了。我刪除了事件處理程序,並將其定義爲常規函數,並在表單提交事件處理程序中調用它。感謝您指出這一點 – json1