Scusa Vindav, sono solo riuscito a postarlo adesso.
Questo è un estratto del codice, l'integrale è molto più lungo ma come esempio penso possa bastare.
Quindi ricapitolando; funziona tutto, rimangono in errore solo i campi che vengono popolati tramite chiamata ajax (dopo utilizzo della select presente nel form) e per validarli bisogna cliccare sul campo.
Un altro problema da risolvere è il campo "as" che è dipendente dal campo "ps" nel senso che si tratta di 2 orari di cui il 1° (ps) significa partenza schedulata il 2° (as) arrivo schedulato, va da se che il 2° non può essere inferiore del primo.
Come faccio a far capire che uno deve essere inferiore all'altro in particolare quando il formato campo è hh:mm ?
Devo creare un nuovo metodo ?
codice:
$().ready(function() {
$("#my-form").validate({
rules: {
date_report: {
required: true
},
date_event: {
required: true
},
note: {
required: true
},
ps: {
required: function(element) {
return $("#id_checkbox").prop('checked') && $("#id_radio_1").prop('checked');
},
regex_hhmm: /^([0-1]?[0-9]|2[0-4]):([0-5][0-9])(:[0-5][0-9])?$/,
maxlength: 5
},
as: {
required: function(element) {
return $("#id_checkbox").prop('checked') && $("#id_radio_1").prop('checked');
},
regex_hhmm: /^([0-1]?[0-9]|2[0-4]):([0-5][0-9])(:[0-5][0-9])?$/,
maxlength: 5
}
},
messages: {
date_report: {
required: "<= campo obbligatorio"
},
date_event: {
required: "<= campo obbligatorio"
},
note: {
required: "<= campo obbligatorio"
},
ps: {
required: "<= error",
regex_hhmm: "<= error",
maxlength: "max 5 caratteri"
},
as: {
required: "<= error",
regex_hhmm: "<= error",
maxlength: "max 5 caratteri"
<!-- questo è dipendente dal campo ps, non deve essere inferiore come orario, es.: se ps = 06:30 questo deve essere almeno 06:35 -->
}
}
});
});
thanks
.