Jak mogę uzyskać poniższy kod do pracy, gdy mam miesiąc lutego? Obecnie dochodzi do dnia, a następnie zatrzymuje się przed dotarciem do niego, czy w celu ustalenia, czy jest to rok przestępny.javascript znaleźć rok przestępny
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 +'/' + '';
}
}
"Zatrzymanie" jak? Czy wystąpił błąd? –
nigdy nie ocenia roku, aby sprawdzić, czy jest rokiem przestępnym, przechodzi bezpośrednio do field.focus i field.value, czy jest rokiem przestępnym czy nie. –
Twoje warunki wyglądają trochę dziwnie - tak jak są obecnie napisane, sprawdzasz tylko "dzień" dla wartości 29 lub wyższych (w oparciu o klauzule "day == 29" i "day> 28"). Zakładam, że chciałeś napisać 'dzień <= 28', ale jeśli tak jest, możesz odrzucić drugą klauzulę" else if "i bezpośrednio użyć klauzuli" else ". Może być również bezpieczniej dodać dodatkowy zestaw nawiasów do twojej klauzuli "rok przestępny": 'if (year% 4! = 0 || (year% 100 == 0 && year% 400! = 0))' – JW8