Autor | Zpráva | ||
---|---|---|---|
Robert P. Profil * |
#1 · Zasláno: 8. 11. 2010, 20:19:55
Ahoj přátelé, potřeboval by jsem poradit jakým způsobem doprogramovat část kódu, konkrétně u přestupného roku aby měl únor 29 dní?
Zde zadávám kód, se kterým by jsem potřeboval pomoct: <HTML> <HEAD> <TITLE> Výběr data </TITLE> <SCRIPT Language="JavaScript"> <!-- // Počty dní v jednotlivých měsících // Únor má pro jednoduchost vždy 29 dní Days=new Array (30,29,31,30,31,30,31,31,30,31,30,31); // Funkce, která se spustí při změně měsíce function onChangeMonth(){ // Zapamatuje se vybraný den var OldSelected = document.frmCalendar.selDay.selectedIndex; // Smažou se všechny dny v nabídce document.frmCalendar.selDay.options.length = 0 var optionName; var Length; // Počet dní v daném měsící var NumOfDays = Days[document.frmCalendar.selMonth.selectedIndex]; // Vloží se odpovídající počet dní do nabídky for (i=1; i<=NumOfDays; i++){ // Vytvoří se nová položka pro den optionName = new Option(i, i, false, false); Length = document.frmCalendar.selDay.length; document.frmCalendar.selDay.options[Length] = optionName; } // Vybere se den, který tam původně byl vybrán if (OldSelected >= document.frmCalendar.selDay.length) OldSelected = document.frmCalendar.selDay.length-1; document.frmCalendar.selDay.options[OldSelected].selected = true; } // Funkce pro získání výsledného data function GetDate(){ DT = new Date ( document.frmCalendar.selYear.options[ document.frmCalendar.selYear.selectedIndex ].value, document.frmCalendar.selMonth.options[ document.frmCalendar.selMonth.selectedIndex ].value, document.frmCalendar.selDay.options[ document.frmCalendar.selDay.selectedIndex ].value ); return (DT); } // --> </SCRIPT> </HEAD> <BODY OnLoad="onChangeMonth();"> <FORM Name="frmCalendar" OnSubmit="return false;"> Zadejte datum:<BR> <SELECT Name="selDay"> <OPTION Value="10" Selected>1</OPTION> </SELECT> <SELECT Name="selMonth" OnChange="onChangeMonth();"> <OPTION Value="1" Selected>Leden</OPTION> <OPTION Value="2">Únor</OPTION> <OPTION Value="3">Březen</OPTION> <OPTION Value="4">Duben</OPTION> <OPTION Value="5">Květen</OPTION> <OPTION Value="6">Červen</OPTION> <OPTION Value="7">Červenec</OPTION> <OPTION Value="8">Srpen</OPTION> <OPTION Value="9">Září</OPTION> <OPTION Value="10">Říjen</OPTION> <OPTION Value="11">Listopad</OPTION> <OPTION Value="12">Prosinec</OPTION> </SELECT> <SELECT Name="selYear"> <OPTION Value="2000">2000</OPTION> <OPTION Value="2001">2001</OPTION> <OPTION Value="2002">2002</OPTION> <OPTION Value="2003" Selected>2003</OPTION> <OPTION Value="2004">2004</OPTION> <OPTION Value="2005">2005</OPTION> </SELECT> <INPUT Type="Button" Value="GetDate" OnClick="alert (GetDate());"> </FORM> </BODY> </HTML> Děkuji |
||
_es Profil |
#2 · Zasláno: 8. 11. 2010, 20:34:57
|
||
Časová prodleva: 8 dní
|
|||
Robert P. Profil * |
#3 · Zasláno: 16. 11. 2010, 14:34:51
Děkuji za radu, ale stále se mi nedaří kód aby to pracovalo správně - mohl by jsi mi prosimtě pomoci od základů tam tu funkci doprogramovat, repspektive popsat alespoň postup ať to lépe pochopím? Děkuji všem
Pro ukázku přikládám kód ověření datumu: function platnyDatum(den, mesiac, rok) { var d = new Date(Date.UTC(rok, mesiac - 1, den)); return d.getUTCFullYear() === rok && d.getUTCMonth() === mesiac - 1 && d.getUTCDate() === den; } |
||
Časová prodleva: 13 let
|
0