Come posso ottenere il codice qui sotto per funzionare quando ho un mese di febbraio? Attualmente sta arrivando al giorno e poi si ferma prima di arrivare al se per determinare se è un anno bisestile.javascript per trovare anno bisestile
if (month == 2) {
if (day == 29) {
if (year % 4 != 0 || year % 100 == 0 && year % 400 != 0) {
field.focus();
field.value = month +'/' + '';
}
}
else if (day > 28) {
field.focus();
field.value = month +'/' + '';
}
}
"Arresto" come? C'è un errore? –
non valuta mai l'anno per vedere se è un anno bisestile va dritto al field.focus e field.value se è un anno bisestile o no –
Le tue condizioni sono un po 'strane - come sono attualmente scritte ora, si controlla solo 'giorno' per i valori di 29 o maggiori (in base alle clausole' day == 29' e 'day> 28' if). Suppongo che tu intendessi scrivere 'day <= 28', ma se questo è il caso, potresti rilasciare la seconda clausola' else if' e usare direttamente una clausola 'else'. Potrebbe anche essere più sicuro aggiungere un'ulteriore serie di parentesi alla clausola bisestile: 'if (year% 4! = 0 || (year% 100 == 0 && year% 400! = 0))' – JW8