die die max Methode zur Regel machen und eine Funktion als pa Rameter. Dies wird ausgewertet, wenn das Feld validiert wird, dh wenn element() für das Feld aufgerufen wird.
Regeln Definition wie diese auch
rules: {
field1:
{
required: true,
max: function() { return $("#mycheckbox:checked").length ? 100 : 50; }
}
}
sieht, revalidate das Zielfeld, wenn Regeländerungen oder Sie können mit einer Fehlermeldung, die nicht mehr
$('#mycheckbox').on('change', function() {
$('#field1.error').each(function() {
$(this).valid();
});
});
Notiz gelassen werden, dass dies nur revalidates gilt das Feld, wenn es bereits validiert ist, auf das Vorhandensein der Standard errorClass 'Fehler' überprüft.
mit html wie folgt
<input name="mycheckbox" id="mycheckbox" type="checkbox" />
<input name="field1" id="field1">
<input type="submit" />
Voll JavaScript-Code ist wie diese, find the fiddle here
$(function() {
$("form").validate({
rules: {
field1:
{
required: true,
max: function() {
return $("#mycheckbox:checked").length ? 100 : 50;
}
}
},
submitHandler: function() {
alert('form ok');
}
});
$('#mycheckbox').on('change', function() {
$('#field1.error').each(function() {
$(this).valid();
});
});
});