formmad
Mitglied
Hallo zusammen...
ich habe ein kleines Problem mit dem JavaScript Kalender.
Wenn auf ein Datum geklickt wird, wird es in eine entsprechende Formular Feld übertragen. Das klappt auch bei mir. Ich kann den Kalender super etablieren. Nur er gibt mir ein falsches Datumsformat aus z.B. "4.2.2006" ich möchte aber gerne "04.02.2006" haben.
Weiß jemand Rat?
Danke
ich habe ein kleines Problem mit dem JavaScript Kalender.
PHP:
//Formularname im Elternfenster
sFormName='formularname';
//Input-Name im Elternfenster
sInputName='inputname';
//Falls das Outfit nicht gefaellt, ist hier die Chance, dies abzustellen.
//Tabelle
cTable =' style="background-color:#515151;font:12px Verdana,Geneva,Arial,Sans-Serif;"';
//Tabellenkopf
cHeader =' style="background-color:#626262;color:gold;" ';
//Woche...
cWeek =' style="color:#ffffff;background-color:#818181;"';
//Tag Normal
cDay =' align="right"style="color:#000000;background-color:#dfdfdf;"';
//Aktueller Tag
cDayThis =' align="right"style="color:firebrick;font-weight:bold;background-color:#ffffff;border:1px solid firebrick;"';
//Kein Tag
cDayNo =' style="color:#000000;background-color:#a1a1a1;"';
//Tag mit Termineintrag(betrifft nur Text, Zellenformat wird vererbt)
cDayClick=' style="text-decoration:underline;cursor:pointer;"';
if(document.all){cDayClick=' style="text-decoration:underline;cursor:hand;"';}
//Wochenende
cDayWE =' align="right"style="color:#000000;background-color:#c1c1c1;"';
//Termin
cInfo =' style="color:#000000;font-size:10px;background-color:#f0f0f0;"';
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
iX=false;
if(document.getElementsByTagName&&document.getElementsByTagName('script')[0].innerHTML!='undefined'){iX=true;}
mS=new Array('Januar','Februar','März','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember');
wdS=new Array('Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag');
wD=new Array(0,1,2,3,4,5,-1);
now=new Date();
thisDay=new Date();
var toMonth=thisDay.getMonth();
var toDay=thisDay.getDate();
function makeCalendar(m,y,sD)
{
yyN=y;NN=true;mmN=m+1;
yyP=y;PP=false;mmP=m-1;
if(m==11){yyN=y+1;mmN=0;}
if(m==0&&y>0){yyP=y-1;mmP=11;}
if(y>0||m>0){PP=true;}
now.setDate(1);
now.setMonth(m);
now.setFullYear(y);
mLength=new Array(31,28,31,30,31,30,31,31,30,31,30,31);
if(y % 4==0){mLength[1]=29;if(y % 100==0){mLength[1]=28;}if(y % 400==0){mLength[1]=29;}}
mStart=now.getDay();
prev_=' ';if(PP&&iX){prev_='<b style="cursor:w-resize;"title="'+mS[m-1]+'"onclick="switchCalendar('+mmP+','+yyP+',false);"><<</b>';}
next_=' ';if(NN&&iX){next_='<b style="cursor:e-resize;"title="'+mS[m+1]+'"onclick="switchCalendar('+mmN+','+yyN+',false);">>></b>';}
htm='<table'+cTable+'border="0"cellspacing="1"cellpadding="1"width="220"><tr><td colspan="8"><table width="100%"cellpadding="0"cellspacing="0"border="0"><tr><td align="left"'+cHeader+'><b'+cHeader+'>'+prev_+'</b></td><td align="center"'+cHeader+'><b'+cHeader+'>'+mS[m]+' '+y+'</b></td><td align="right"'+cHeader+'><b'+cHeader+'>'+next_+'</b></td></tr></table></td></tr>';
initR=false;
stopR=false;
mDay=' ';
for(r=0;r<6;++r)
{
if(stopR){break;}
htm+='<tr><td nowrap="nowrap"'+cWeek+'>'+eval(r+1)+'.Woche</td>';
for(xD=0;xD<7;++xD)
{
if(!initR&&(wD[xD]==mStart-1))
{
mDay=0;initR=true;
}
if(!stopR&&initR)
{
mDay++;
if(mDay>mLength[m]){mDay=' ';}
if(mDay==mLength[m]){stopR=true;}
}
else{mDay=' ';}
mDayX=mDay;
sClick=' onclick="klick('+mDay+','+eval(m+1)+','+y+');" ';
dayCell='<td'+sClick+cDay+'>'+mDayX+'</td>';
if(xD>4)
{dayCell='<td'+sClick+cDayWE+'>'+mDayX+'</td>';}
if(mDay==' ')
{dayCell='<td'+cDayNo+'>'+mDayX+'</td>';}
if(mDay==thisDay.getDate()&&m==thisDay.getMonth()&&y==thisDay.getFullYear())
{dayCell='<td'+sClick+cDayThis+'>'+mDayX+'</td>';}
htm+=dayCell;
}
htm+='</tr>\n';
}
htm+='</table>';
if(document.layers)
{document.calendar.document.write(htm);return '';}
return htm;
}
function switchCalendar(m,y)
{
document.getElementById('calendar').innerHTML=makeCalendar(m,y,false);
}
function klick(d,m,y)
{
opener.document.forms[sFormName].elements[sInputName].value=d+'.'+m+'.'+y;
}
HTML:
<html>
<head>
<title>Kalender</title>
<style type="text/css">
<!--
-->
</style>
<script type="text/javascript"src="calendar.js"></script>
</head>
<body>
<div id="calendar"style="position:absolute;top:0;left:0;display:inline;">
<script type="text/javascript">
document.write(makeCalendar(now.getMonth(),now.getFullYear(),true));
</script>
</div>
</body>
</html>
Wenn auf ein Datum geklickt wird, wird es in eine entsprechende Formular Feld übertragen. Das klappt auch bei mir. Ich kann den Kalender super etablieren. Nur er gibt mir ein falsches Datumsformat aus z.B. "4.2.2006" ich möchte aber gerne "04.02.2006" haben.
Weiß jemand Rat?
Danke