Hallo!
Ich habe ein Script das mir 3 Felder ausgibt wo ich Tag Monat und Jahr auswählen kann. (wobei immer die richtigen Tage pro Monat stehen)
Wenn ich jetzt aber in dem Formular nocheinmal die 3 gleichen Felder einfüge ( Weil ich Anfangs und Enddatum eingeben möchte) funktioniert es bei denen nicht.
Was muss ich da ändern?
Ich habe folgendes Script:
Ich habe ein Script das mir 3 Felder ausgibt wo ich Tag Monat und Jahr auswählen kann. (wobei immer die richtigen Tage pro Monat stehen)
Wenn ich jetzt aber in dem Formular nocheinmal die 3 gleichen Felder einfüge ( Weil ich Anfangs und Enddatum eingeben möchte) funktioniert es bei denen nicht.
Was muss ich da ändern?
Ich habe folgendes Script:
Code:
[php]
<html>
<head>
<title>JavaScript</title>
</head>
<!--
Damit die Datumsauswahl mit dem aktuellen Datum versehen wird,
brauchen Sie drei Teile: das Script, einen erweiterten Body-Tag und ein
modifiziertes Formular.
//-->
<SCRIPT language="JavaScript">
//set todays date
Now = new Date();
NowDay = Now.getDate();
NowMonth = Now.getMonth();
NowYear = Now.getYear();
if (NowYear < 2000) NowYear += 1900; //for Netscape
//function for returning how many days there are in a month including leap
years
function DaysInMonth(WhichMonth, WhichYear)
{
var DaysInMonth = 31;
if (WhichMonth == "Apr" || WhichMonth == "Jun" || WhichMonth == "Sep" || WhichMonth == "Nov") DaysInMonth = 30;
if (WhichMonth == "Feb" && (WhichYear/4) != Math.floor(WhichYear/4)) DaysInMonth = 28;
if (WhichMonth == "Feb" && (WhichYear/4) == Math.floor(WhichYear/4)) DaysInMonth = 29;
return DaysInMonth;
}
//function to change the available days in a months
function ChangeOptionDays(Which)
{
DaysObject = eval("document.Form1." + Which + "Day");
MonthObject = eval("document.Form1." + Which + "Month");
YearObject = eval("document.Form1." + Which + "Year");
Month = MonthObject[MonthObject.selectedIndex].text;
Year = YearObject[YearObject.selectedIndex].text;
DaysForThisSelection = DaysInMonth(Month, Year);
CurrentDaysInSelection = DaysObject.length;
if (CurrentDaysInSelection > DaysForThisSelection)
{
for (i=0; i<(CurrentDaysInSelection-DaysForThisSelection); i++)
{
DaysObject.options[DaysObject.options.length - 1] = null
}
}
if (DaysForThisSelection > CurrentDaysInSelection)
{
for (i=0; i<(DaysForThisSelection-CurrentDaysInSelection); i++)
{
NewOption = new Option(DaysObject.options.length + 1);
DaysObject.add(NewOption);
}
}
if (DaysObject.selectedIndex < 0) DaysObject.selectedIndex == 0;
}
//function to set options to today
function SetToToday(Which)
{
DaysObject = eval("document.Form1." + Which + "Day");
MonthObject = eval("document.Form1." + Which + "Month");
YearObject = eval("document.Form1." + Which + "Year");
YearObject[0].selected = true;
MonthObject[NowMonth].selected = true;
ChangeOptionDays(Which);
DaysObject[NowDay-1].selected = true;
}
//function to write option years plus x
function WriteYearOptions(YearsAhead)
{
line = "";
for (i=0; i<YearsAhead; i++)
{
line += "<OPTION>";
line += NowYear + i;
}
return line;
}
</SCRIPT>
<!--
Damit das Script das aktuelle Datum einstellt, müssen Sie den den Body-
Tag der Web-Seite um den Parameter onload="SetToToday('FirstSelect');"
erweitern.
//-->
<BODY onload="SetToToday('FirstSelect');" bgcolor="cccc99"><br><br>
<div align="center">
<h3>Datumsauswahl</h3>
<br>
<p>Die einfachste Möglichkeit ein Datum per Formular abzufragen, ist
die Vorgabe von Tag, Monat und Jahr in einem Menü.</p>
<p>Noch bequemer wird's, wenn Sie per Script zugleich das aktuelle Datum vorgeben.</p>
<br>
<!--
Das unten stehende Formular enthält alle Modifikationen, damit einen <p>
Datumsauswahl angezeigt und mit dem aktuellen Datum versehen wird. <P>
Am besten kopieren Sie das komplette Formular inklusive der beiden Form-<p>
Tags in Ihre Homepage. Selbstverständlich können Sie anschließend weitere Formularfelder einfügen.
//-->
<FORM name="Form1">
<SELECT name="FirstSelectDay">
<OPTION>1<OPTION>2<OPTION>3
<OPTION>4<OPTION>5<OPTION>6
<OPTION>7<OPTION>8<OPTION>9<OPTION>10
<OPTION>11<OPTION>12<OPTION>13<OPTION>14
<OPTION>15<OPTION>16<OPTION>17<OPTION>18
<OPTION>19<OPTION>20<OPTION>21<OPTION>22
<OPTION>23<OPTION>24<OPTION>25<OPTION>26
<OPTION>27<OPTION>28<OPTION>29<OPTION>30
<OPTION>31
</SELECT>
<SELECT name="FirstSelectMonth" onchange="ChangeOptionDays('FirstSelect')">
<OPTION>Jan<OPTION>Feb
<OPTION>Mar<OPTION>Apr
<OPTION>May<OPTION>Jun
<OPTION>Jul<OPTION>Aug
<OPTION>Sep<OPTION>Oct
<OPTION>Nov<OPTION>Dec
</SELECT>
<SELECT name="FirstSelectYear" onchange="ChangeOptionDays('FirstSelect')">
<OPTION>2001<OPTION>2002<OPTION>2003<OPTION>2004
<OPTION>2005<OPTION>2006<OPTION>2007<OPTION>2008
<OPTION>2009<OPTION>2010<OPTION>2011<OPTION>2012
<OPTION>2013<OPTION>2014<OPTION>2015<OPTION>2016
<OPTION>2017<OPTION>2018<OPTION>2019<OPTION>2020
</SELECT>
</FORM>
</div>
</body>
</html>[/php]
EDIT:
TobiaZ: Umget
t 

Kommentar