Ответ 1
Как это иногда бывает, я, кажется, наткнулся на ответ сразу после прихода сюда.
for (var i in settings.rules){
delete settings.rules[i].required;
}
Works.
Как указано выше, как я могу удалить все необходимые правила из формы с помощью jQuery Validate?
Это то, что я имею в настоящее время:
var settings = $('form').validate().settings;
//alert(settings.rules.toSource());
for (var i in settings.rules){
alert(i);
delete settings.rules.i;
// ^ not sure about how to do this properly,
// and how to just delete the 'required' rule and keep the rest intact
}
Функция, родная для jQuery Validate, возвращает ошибку undefined:
$("input, select, textarea").rules('remove','required');
Как это иногда бывает, я, кажется, наткнулся на ответ сразу после прихода сюда.
for (var i in settings.rules){
delete settings.rules[i].required;
}
Works.
И если вы не хотите вмешиваться во внутренние настройки проверки, вы можете использовать публичную функцию следующим образом:
$('input, select, textarea').each(function() {
$(this).rules('remove', 'required');
});
Обратите внимание, что исключение второго параметра (обязательно) приведет к удалению всех правил, а не только "необходимых".