Я делаю регистрационную форму, и я хочу проверить, имеет ли пользователь соответствующие пароли во время ввода и дает ему соответствующее сообщение. До сих пор все работает, для этих вещей, за исключением:Проверка совпадения паролей «совпадение паролей», когда оба поля пустые
- Когда пользователь удаляет все из Confirm поля пароля все еще дает ему сообщение «Пароли не совпадают», а я хочу, чтобы дать ему никакого сообщения или сообщение говоря «Пожалуйста, подтвердите пароль».
- Когда пользователь удаляет все из обоих полей, он дает ему сообщение «Совпадения паролей», в то время как он не должен давать ему никакого сообщения.
Вот мой код:
$(function() {
$("#txtNewPassword").keyup(checkPasswordMatch);
$("#txtConfirmPassword").keyup(checkPasswordMatch);
});
function checkPasswordMatch() {
$("#divCheckPasswordMatch").html("");
var password = $("#txtNewPassword").val();
var confirmPassword = $("#txtConfirmPassword").val();
if (password == "" && confirmPassword == ""){
$("#divCheckPasswordMatch").html("");
$("#divIsPasswordExist").html("");
}
else if (password != "" && confirmPassword == "") {
$("#divCheckPasswordMatch").html("");
}
else if (password == "" && confirmPassword != "")
$("#divIsPasswordExist").html("Password cannot be empty!");
else
$("#divIsPasswordExist").html("");
if (password != confirmPassword)
{
$("#divCheckPasswordMatch").removeClass("registrationFormConfirm");
$("#divCheckPasswordMatch").addClass("registrationFormAlert");
$("#divCheckPasswordMatch").html("Passwords do not match!");
}
else
{
$("#divCheckPasswordMatch").removeClass("registrationFormAlert");
$("#divCheckPasswordMatch").addClass("registrationFormConfirm");
$("#divCheckPasswordMatch").html("Passwords match.");
}
}
Любые идеи, пожалуйста? Спасибо!
Я думаю, что 'return' помогает вам сделать правильное сообщение и вернуться из этого конкретного места, а не выполнять весь код. –
Непосредственно связан с вопросом, но вам может быть интересно обнаружить событие HTML5 ['onInput'] (http://mathiasbynens.be/notes/oninput) вместо' onKeyUp'. –