#javascript #jquery #validation #jquery-validate
#javascript #jquery #проверка #jquery-проверка
Вопрос:
У меня есть два поля ввода, email и email_confirm. Поле email содержит значение электронной почты пользователя из базы данных. Я хочу убедиться, что если пользователь обновляет свою электронную почту (оба ввода должны иметь одинаковое значение), они совпадают, однако я не могу использовать значение по умолчанию equalTo, потому что ввод электронной почты всегда имеет значение. Итак, мне нужно проверить, равно ли значение email_confirm электронной почте, если значение электронной почты отличается от значения по умолчанию.
Вот код, который у меня есть, значение также всегда кажется пустым.
$.validator.addMethod('myEqual', function (value, element, param){
return value == $(param).val();
}, 'Message');
Комментарии:
1. Решается с помощью: $.validator.addMethod(‘myEqual’, функция (значение, элемент, параметр){ возвращает $ (element).val() == $ (param).val(); }, ‘Сообщение’);
2. ответьте на свой собственный вопрос и отметьте как ответ, что не является чем-то неслыханным
Ответ №1:
Просто добавьте приведенное ниже правило для email_confirm
поля,
equalTo : "#email" //Replace #email with the id the of the email field.
Для этого нет необходимости добавлять пользовательский метод.
Ответ №2:
if ($("#email").val() != theDefaultValue) {
if ($("#email").val() == $("#email_confirm")) {
// It's all good
} else {
// It's all bad
}
} else {
// It doesn't matter
}