Kalender modifizieren
deathdog
- javascript
Ich will diesen Kalender so modifizieren das ich den Monat wechseln kann.
http://de.selfhtml.org/javascript/beispiele/monatskalender.htm
Dies habe ich bisher gemacht, doch es funktioniert nicht wie gewünscht.
http://deathdog.de.funpic.de/kal.html
Bitte um Hilfe.
Hi,
Dies habe ich bisher gemacht, doch es funktioniert nicht wie gewünscht.
Bitte um Hilfe.
bei welchem Problem? "Funktioniert nicht" ist keine Fehlerbeschreibung.
Cheatah
Hi,
Dies habe ich bisher gemacht, doch es funktioniert nicht wie gewünscht.
Bitte um Hilfe.bei welchem Problem? "Funktioniert nicht" ist keine Fehlerbeschreibung.
Cheatah
Es geht Speziell um diesen Code.
durch einen klick auf einen Link:
<a class="next" href="javascript:MonatVor();">Vorheriger Monat</a>
soll dann ein Cookie gesetzt werden welcher beim nächsten Aufruf der Seite abgerufen wird.
Die Informationen des Cookies sollen dann verwendet werden um den Kalender mit einem anderem Monat aufzubauen.
So weit so gut.
Der Cookie wird auch gesetzt und die Informationen abgerufen.
Nur sie werden anscheinend nicht verwendet.
Dabei weise ich ja der Variable "DieserMonat" den Wert des Cookies zu.
Ich hoffe nun ist es besser erklärt.
Mit erneuter Bitte um Hilfe.
-----------------------------------------------------
/*Edit start*/
if (document.cookie) {
/*Wenn für das Dokument ein Cookie existiert...*/
var MonatAlt = document.cookie;
/*...wird der Variable MonatAlt der Wert des Cookies gegeben.*/
alert ("MonatAlt");
alert (MonatAlt);
var DieserMonat = MonatAlt;
/*Der Variable DieserMonat, die für die Bestimmung des Monats im Kalender verantwortlich ist, wird der Wert der Variable MonatAlt gegeben.*/
alert ("DieserMonat");
alert (DieserMonat);
}
else {
/*Wenn kein Cookie existiert...*/
var jetzt = new Date();
/*...wird ein neues Datum wird angelegt,*/
var MonatAlt = jetzt.getMonth() + 1;
/*Der Variable MonatAlt wird das aktuelle Datum zugewiesen.*/
alert ("SetMonatAlt");
alert (MonatAlt);
document.cookie = MonatAlt + ";";
/*Dem Cookie wird der Wert der Variable, MonatAlt, gegeben.*/
}
/*Edit Ende*/
----------------------------------------------------
/*Edit*/
function MonatVor () {
/*Ich definiere eine neu Funktion*/
if (document.cookie) {
/*Wenn für das Dokument ein Cookie existiert...*/
var MonatAlt = document.cookie;
/*...wird der Variable MonatAlt der Wert des Cookies gegeben.*/
alert ("MonatAlt");
alert (MonatAlt);
var MonatAlt = parseInt(MonatAlt) -1;
/*Der Wert der Variable MonatAlt wird Minus 1 genommen.*/
alert ("NochmalMonatAlt");
alert (MonatAlt);
document.cookie = MonatAlt + ";";
*Dem Cookie wird der Wert der Variable, MonatAlt, gegeben.*/
}
else { /*Wenn kein Cookie existiert...*/
var jetzt = new Date();
/*...wird ein neues Datum wird angelegt,*/
var MonatAlt = jetzt.getMonth();
/*Der Variable MonatAlt wird das Datum des vorigem Monats zugewiesen.*/
alert ("SetMonatAlt");
alert (MonatAlt);
document.cookie = MonatAlt + ";";
/*Dem Cookie wird der Wert der Variable, MonatAlt, gegeben.*/
}
}
/*Edit Ende*/
---------------------------------------------------
Hi,
soll dann ein Cookie gesetzt werden welcher beim nächsten Aufruf der Seite abgerufen wird.
warum versuchst Du, einen (nicht voraussetzbaren) Persistenzspeicher zu verwenden, obwohl Du einen Wert nur um einen einzigen Schritt weitertragen möchtest?
So weit so gut.
Der Cookie wird auch gesetzt und die Informationen abgerufen.
Der Cookie wird (eventuell) gesetzt und die Gesamtheit aller Cookies, die für Deinen Hostebereich gelten, wird zu benutzen versucht.
Dabei weise ich ja der Variable "DieserMonat" den Wert des Cookies zu.
Den Wert aller Cookies. Inklusive ihrer Namen.
Ich hoffe nun ist es besser erklärt.
Etwas. Fürs nächste Mal: Es gehört auch immer Deine Problemanalyse dazu.
Cheatah
warum versuchst Du, einen (nicht voraussetzbaren) Persistenzspeicher zu verwenden, obwohl Du einen Wert nur um einen einzigen Schritt weitertragen möchtest?
Wie könnte ich den Wert den sonst noch weitertragen?
(Ein Beispiel oder ein Link zur richtigen Seite in Selfhtml wäre nett.)
Hi,
Wie könnte ich den Wert den sonst noch weitertragen?
über die Link-URL, bzw. wenn Du die Seite gar nicht verlässt über eine Variable.
Cheatah
Hi,
Wie könnte ich den Wert den sonst noch weitertragen?
über die Link-URL, bzw. wenn Du die Seite gar nicht verlässt über eine Variable.
Cheatah
Kannst du vielleicht noch ein Beispiel Posten?
Oder einen Link zu einer Seite von Selfhtml auf der dies erklärt ist?
Hi,
über die Link-URL, bzw. wenn Du die Seite gar nicht verlässt über eine Variable.
Kannst du vielleicht noch ein Beispiel Posten?
was genau ist Dir denn unklar?
Oder einen Link zu einer Seite von Selfhtml auf der dies erklärt ist?
Ein Link zu einer Seite, die einen Link hat, oder ein Link zu einer Seite, auf der eine JavaScript-Variable gesetzt wird?
Cheatah
Hi,
über die Link-URL, bzw. wenn Du die Seite gar nicht verlässt über eine Variable.
Kannst du vielleicht noch ein Beispiel Posten?was genau ist Dir denn unklar?
Oder einen Link zu einer Seite von Selfhtml auf der dies erklärt ist?
Ein Link zu einer Seite, die einen Link hat, oder ein Link zu einer Seite, auf der eine JavaScript-Variable gesetzt wird?
Cheatah
Hi,
ich habe das nun wie vorgeschlagen gemacht.
Ich übergebe die Werte per URL.
http://deathdog.de.funpic.de/Kalender.html
----------------------------------------------------
<a class="next" href="javascript:MonatVor();">Vorheriger Monat</a>
---------------------------------------------------
function MonatVor () {
var Monat = window.prompt("Bitte geben Sie den gewünschten Monat ein.");
alert (Monat)
var Jahr = window.prompt("Bitte geben sie das gewünschte Jahr ein.");
alert (Jahr)
window.location.href = "Kalender.html"+"?"+"Monat="+Monat+"&"+"Jahr="+Jahr;
}
---------------------------------------------------
function Werteliste (querystring) {
if (querystring == '') return;
var wertestring = querystring.slice(1);
var paare = wertestring.split("&");
var paar, name, wert;
for (var i = 0; i < paare.length; i++) {
paar = paare[i].split("=");
name = paar[0];
wert = paar[1];
name = unescape(name).replace("+", " ");
wert = unescape(wert).replace("+", " ");
this[name] = wert;
}
}
var liste = new Werteliste(location.search);
for (var eigenschaft in liste) {
var DieserMonat = liste.Monat;
var DiesesJahr = liste.Jahr;
alert (DieserMonat);
alert (DiesesJahr);
}
---------------------------------------------------
Es wird alles richtig übergeben, doch anscheinend werden die Werte nicht verwendet.
Mit:
var DieserMonat = liste.Monat;
var DiesesJahr = liste.Jahr;
gebe ich doch den für die Kalendergenerierung relevanten Variablen neue Werte.
Oder?
Mit erneuter Bitte um Hilfe.
Hi,
Mit:
var DieserMonat = liste.Monat;
var DiesesJahr = liste.Jahr;
gebe ich doch den für die Kalendergenerierung relevanten Variablen neue Werte.
Oder?
soweit ich es sehe: Ja, und zwar gleich mehrmals (warum auch immer). Was sagen denn Deine Testausgaben?
Cheatah
Ich will diesen Kalender so modifizieren das ich den Monat wechseln kann.
http://de.selfhtml.org/javascript/beispiele/monatskalender.htm
hier ist doch alles, was du brauchst:
function Kalender (Monat, Jahr)
du brauchst doch bloß den Funktions-Aufruf deinen Wünschen anzupassen. Was präzise ist dabei das Problem?
Ich will diesen Kalender so modifizieren das ich den Monat wechseln kann.
http://de.selfhtml.org/javascript/beispiele/monatskalender.htmhier ist doch alles, was du brauchst:
function Kalender (Monat, Jahr)
du brauchst doch bloß den Funktions-Aufruf deinen Wünschen anzupassen. Was präzise ist dabei das Problem?
Von
/*Edit start*/
bis
/*Edit Ende*/
habe ich meinen Code reingeschrieben.
Doch der hat gar nicht die Auswirkungen die ich erreichen will.
Und nun weiß ich nicht was ich da falsch gemacht habe.
sry bin ein Anfänger.
Hallo deathdog,
Dies habe ich bisher gemacht, doch es funktioniert nicht wie gewünscht.
http://deathdog.de.funpic.de/kal.html
Kein Wunder, die auf dem Weiterschalter aufgerufenen Funktion MonatWeiter() ist gar nicht defniert und die Funktion MonatVor() bewirkt kein Neuschreiben der Seite.
Gruß Gernot
PS: Ich glaube, du brauchst mal Urlaub!
http://www.neckermann-reisen.at/nec2-at/ferienkalender.jsp
Hallo deathdog,
Dies habe ich bisher gemacht, doch es funktioniert nicht wie gewünscht.
http://deathdog.de.funpic.de/kal.htmlKein Wunder, die auf dem Weiterschalter aufgerufenen Funktion MonatWeiter() ist gar nicht defniert und die Funktion MonatVor() bewirkt kein Neuschreiben der Seite.
Gruß Gernot
PS: Ich glaube, du brauchst mal Urlaub!
MonatWeiter() kommt sobald MonatVor läuft.
Die Seite kann man fürs grundlegende testen auch mit F5 aktualisieren.