![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 23 Pomógł: 0 Dołączył: 26.03.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam taki oto kod java script: Kod <script type="text/javascript"> <!-- <![CDATA[ function czydataistnieje(dzien, miesiac, rok) { var miesiac = miesiac-1; var d = new Date(rok,miesiac,dzien); if (dzien==d.getDate() && miesiac==d.getMonth() && rok==d.getFullYear()) return true; else return false } function sprawdz(f) { var data = new Date(); var m = data.getMonth()+1; var d = data.getDate(); var r = data.getFullYear(); var dzisiaj = ""+r+((m<10)?"0":"")+m+((d<10)?"0":"")+d; var pr=f.rok[f.rok.selectedIndex].value; var pm=f.miesiac[f.miesiac.selectedIndex].value; var pd=f.dzien[f.dzien.selectedIndex].value; var wybrany=""+pr+((pm<10)?"0":"")+pm+((pd<10)?"0":"")+pd; var blad=0; if (dzisiaj>wybrany) { blad++; alert("Wybrano datę z przeszłości!"); } else if (!czydataistnieje(pd,pm,pr)) { blad++; alert("Wybrano datę, która nie istnieje!"); } if (blad>0) { f.rok.options[r-f.rok[0].value].selected = true; f.miesiac.options[m-1].selected = true; f.dzien.options[d-1].selected = true; } } // ]]> --> </script> Skrypt sprawdza czy użytkownik prawidłowo wybrał datę z list (rok, miesiąc, dzień), jeżeli wybrał datę z przeszłości lub datę która nie istnieje jest o tym informowany komunikatem. Chciałbym zezwolić na podanie daty z jednym dniem wstecz, ale nie wiem jak to zrobić... Samo odjęcie jednego dnia: Kod var dzisiaj = (''+r+((m<10)?'0':'')+m+((d<10)?'0':'')+d)-1; jest dobre ale tylko w trakcie miesiąca, problem zaczyna się kiedy jest pierwszy dzień nowego miesiąca i trzeba cofnąć się do ostatniego dnia poprzedniego miesiąca bo skrypt nie pozwala cofnąć się o miesiąc wstecz... trzeba byłoby zezwolić na cofanie się o dobę od całej daty, ale nie mam pojęcia jak to zrobić. Z góry dziękuję za pomoc. Pozdrawiam Arti Ten post edytował Arti79 10.08.2008, 07:40:09 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 21:10 |