<html>
<head>
<title>Monatskalender</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><style type="text/css">
<!--
body {
background-image: url(/back/hintergrund.jpg);
}
.Stil5 {
font-size: 36px;
font-weight: bold;
}
.Stil6 {
color: #2A1FFF;
font-size: 14px;
}
.Stil8 {font-size: 12px}
-->
</style></head>
<script>
moveTo(0,0);
resizeTo(450,600);
</script>
<body bgcolor="#FFFFFF" text="#000000">
<table width="400" border="0" align="center">
<tr>
<th colspan="5" scope="col"><span class="Stil5">Verfügbarkeit</span></th>
</tr>
<tr>
<th width="22" height="22" bgcolor="#FF0000" scope="col"><div align="right"></div></th>
<th width="114" scope="col"><div align="left" class="Stil8">bereits vermietet</div></th>
<th width="117" height="22" scope="col"hgcolor="FF0000"><div align="center"><span class="Stil6"><a href="" onclick="window.close()">Fenster schließen</a> </span></div></th>
<th width="114" scope="col"><div align="right" class="Stil8">verfügbare Termine</div></th>
<th width="22" height="22" bgcolor="#2ADFFF" scope="col"> </th>
</tr>
</table>
<XML id="Auto" src="verfuegbar.xml"></XML>
<script type="text/javascript">
<!--
var d = new Date();
var dm = d.getMonth() + 1;
var dj = d.getYear();
if(dj < 999) dj+=1900;
var Zeiten = new Array();
document.write("<table align=center><tr><td>");
document.write("Stand: " + d.getDate() + "." + dm + "." + dj );
document.write("</td></tr></table>");
function Argumente() {
var arg = new Array();
var location = window.location.search;
if (location.length > 0) {
location = location.substr(1, location.length - 1);
arg = location.split("&");
} else {
arg[0] = false;
}
return arg;
}
var arg = Argumente();
var id = arg[0];
//alert(id);
alert("Daten werden geladen");
prob1();
function prob1()
{
//alert("drin");
var VAuto = Auto.getElementsByTagName('Fahrzeugtyp');
Hier entsteht das Problem!
Sobald das Programm in die For- Schleif reinspringt. Ich denke es liegt einfach an dem Server da er die Daten nicht schnellgenug bereitstellt. Denn so wie ich es oben schon einmal erklärt habe entsteht das Problem nur wenn ich den oben blau makierten alert weg lasse. Dieser gehört eigentlich nicht hier rein muss aber da sonst nichts zu sehen ist. Die frage ist ja nicht ob es überhaupt funktioniert sonder: Warum funktionirt es wenn ich einen alert aufrufe und ohne die Fehlermeldung kommt das "Die Daten noch nicht verfügbar sind".
for(i=0; i<VAuto.length; i++)
{
var Vid = VAuto.item(i).getElementsByTagName('id');
if(id == Vid.item(0).text)
{
var VVerfuegbar = VAuto.item(i).getElementsByTagName('Verfuegbar');
var VDatum = VVerfuegbar.item(0).getElementsByTagName('Date');
for(j=0; j< VDatum.length;j++)
{
Zeiten.push(VDatum.item(j).text);
//alert(Zeiten.join(" "));
}
}
}
/*func ende*/}
for(var zeile = 0; zeile <6 ; zeile++){
document.write("<table border=0 align=center><tr>");
for(var spalte = 0; spalte < 2 ; spalte++) {
if(dm == 13)
{
dm = 1;
dj += 1;
}
document.write("<td>");
Kalender(dm,dj);
document.write("</td>");
dm+=1;
}
document.write("</tr></table>");
}
//Parsen der Datumswerte
function IsVerfuegbar(Jahr, Monat, Tageszahl)
{
var s = Tageszahl + "." + Monat + "." + Jahr;
for(var i=0; i<Zeiten.length;i++)
{
if(Zeiten[i] == s)
return true;
}
return false;
}
function Kalender(Monat,Jahr) {
Monatsname = new Array
("Januar","Februar","März","April","Mai","Juni","Juli",
"August","September","Oktober","November","Dezember");
Tag = new Array ("Mo","Di","Mi","Do","Fr","Sa","So");
var KSchrArt = "Verdana,Arial"; /* Schriftart Kalenderkopf */
var KSchrGroesse = 1; /* Schriftgroesse 1-7 Kalenderkopf */
var KSchrFarbe = "#FFFF00"; /* Schriftfarbe Kalenderkopf */
var Khgrund = "#000066"; /* Hintergrundfarbe Kalenderkopf */
var TSchrArt = "Verdana,Arial"; /* Schriftart Tagesanzeige */
var TSchrGroesse = 1; /* Schriftgroesse 1-7 Tagesanzeige */
var TSchrFarbe = "#000000"; /* Schriftfarbe Tagesanzeige */
var Thgrund = "#2ADFFF"; /* Hintergrundfarbe Tagesanzeige */
var SoFarbe = "#E00000"; /* Schriftfarbe f. Sonntage */
//var Ahgrund = "#FFFF00"; /* Hintergrundfarbe f. heutigen Tag */
var Vergrund = "#FF0000"; /* Hintergrundfarbe nicht verfügbar */
var jetzt = new Date();
var DieserMonat = jetzt.getMonth() + 1;
var DiesesJahr = jetzt.getYear();
if(DiesesJahr < 999) DiesesJahr+=1900;
var DieserTag = jetzt.getDate();
var Zeit = new Date(Jahr,Monat-1,1);
var Start = Zeit.getDay();
if(Start > 0) Start--;
else Start = 6;
var Stop = 31;
if(Monat==4 ||Monat==6 || Monat==9 || Monat==11 ) --Stop;
if(Monat==2) {
Stop = Stop - 3;
if(Jahr%4==0) Stop++;
if(Jahr%100==0) Stop--;
if(Jahr%400==0) Stop++;
}
document.write('<table border="3" cellpadding="1" cellspacing="1">');
var Monatskopf = Monatsname[Monat-1] + " " + Jahr;
SchreibeKopf(Monatskopf,Khgrund,KSchrFarbe,KSchrGroesse,KSchrArt);
var Tageszahl = 1;
for(var i=0;i<=5;i++) {
document.write("<tr>");
for(var j=0;j<=5;j++) {
if((i==0)&&(j < Start))
SchreibeZelle(" ",Thgrund,TSchrFarbe,TSchrGroesse,TSchrArt);
else {
if(Tageszahl > Stop)
{
SchreibeZelle(" ",Thgrund,TSchrFarbe,TSchrGroesse,TSchrArt);
}
else {
// if((Jahr==DiesesJahr)&&(Monat==DieserMonat)&&(Tageszahl==DieserTag))
if (IsVerfuegbar(Jahr,Monat,Tageszahl))
SchreibeZelle(Tageszahl,Vergrund,TSchrFarbe,TSchrGroesse,TSchrArt);
else
SchreibeZelle(Tageszahl,Thgrund,TSchrFarbe,TSchrGroesse,TSchrArt);
Tageszahl++;
}
}
}
if(Tageszahl > Stop)
SchreibeZelle(" ",Thgrund,SoFarbe,TSchrGroesse,TSchrArt);
else {
//if((Jahr==DiesesJahr)&&(Monat==DieserMonat)&&(Tageszahl==DieserTag))
// SchreibeZelle(Tageszahl,Ahgrund,SoFarbe,TSchrGroesse,TSchrArt);
if (IsVerfuegbar(Jahr,Monat,Tageszahl))
SchreibeZelle(Tageszahl,Vergrund,TSchrFarbe,TSchrGroesse,TSchrArt);
else
SchreibeZelle(Tageszahl,Thgrund,SoFarbe,TSchrGroesse,TSchrArt);
Tageszahl++;
}
document.write("<\/tr>");
}
document.write("<\/table>");
}
function SchreibeKopf(Monatstitel,HgFarbe,SchrFarbe,SchrGroesse,SchrArt) {
document.write("<tr>");
document.write('<td align="center" colspan="7" valign="middle" bgcolor="'+HgFarbe+'">');
document.write('<font size="'+SchrGroesse+'" color="'+SchrFarbe+'" face="'+SchrArt+'"><b>');
document.write(Monatstitel);
document.write("<\/b><\/font><\/td><\/tr>");
document.write("<tr>");
for(var i=0;i<=6;i++)
SchreibeZelle(Tag[i],HgFarbe,SchrFarbe,SchrGroesse,SchrArt);
document.write("<\/tr>");
}
function SchreibeZelle(Inhalt,HgFarbe,SchrFarbe,SchrGroesse,SchrArt) {
document.write('<td align="center" valign="middle" bgcolor="'+HgFarbe+'">');
document.write('<font size="'+SchrGroesse+'" color="'+SchrFarbe+'" face="'+SchrArt+'"><b>');
document.write(Inhalt);
document.write("<\/b><\/font><\/td>");
}
//-->
</script>
<table align="center"><tr><td><a href="" onclick="window.close()">Fenster schliessen</a></td></tr></table>
</body>
</html>