Ответ 1
Возможно ли это с помощью jQuery Validate или мне нужно создать свою собственную функцию?
Оба, вроде. Вы можете использовать функцию showErrors
, чтобы отображать ошибки в форме вручную, но поскольку вы не хотите, чтобы это правило было включено, когда вы отправляете форму, вам придется выполнить собственную проверку для значения в вход.
Что-то вроде:
var $validator = $("#myform").validate();
$("#checkid").click(function() {
var errors;
if (!$("#personalid").val()) {
/* Build up errors object, name of input and error message: */
errors = { personalid: "Please enter an ID to check" };
/* Show errors on the form */
$validator.showErrors(errors);
}
});
Пример: http://jsfiddle.net/andrewwhitaker/XjZer/
Обратите внимание, что форма все равно будет отправлена, если в поле personalid
ничего нет.