#jquery #validation
#jquery #проверка
Вопрос:
Я пытаюсь использовать скрипт проверки RSV от benjamin’s keens (версия jquery), но с собственной функцией он не работает. моя пользовательская функция возвращает false, но oncompletehandler все еще вызывается??
$("#testForm").RSV({
onCompleteHandler: myOnComplete,
displayType: "alert-one",
rules: [
"required,first_name,Please enter your first name.",
"required,last_name,Please enter your last name.",
"required,email,Please enter your email address.",
"valid_email,email,Please enter a valid email address.",
"function,testfunct",
]
});
function testFunc() {
tmpName = $('#tmpName').val();
if (tmpName != '') {
//alert ("name has been set");
return true;
}
else {
alert ("Credit card empt");
$('#tmpName').focus();
return false;
}
}`
Ответ №1:
Ваша настроенная функция неверна. Ожидается, что она вернет:
- true, когда проверка пройдена.
- массив (но не «false») при сбое проверки.
более подробную информацию см. в его официальном документе, затем щелкните пункт: «Пользовательские правила проверки»
Для того, чтобы ваша функция должным образом взаимодействовала со сценарием RSV, ваша функция должна иметь четко определенное возвращаемое значение. А именно:
Если поле проходит какой-либо тест или проверки, которые вы администрируете, оно должно явно возвращать значение true. Если она не проходит тесты, она должна вернуть массив массивов, например:
return [[node1, "error message1"], [node2, "error message2"], [node3, "error message3"]];
Или если ваша функция выдает только одну ошибку:
return [[node, "error message"]];
Обратите внимание на двойные [[и ]]. Это не опечатка!