Vergleich zweier Daten??????
Oliver
- javascript
Hallo,
ich habe ein kleines Problem.
Ich bekomme aus einer Datenbank zwei Datumswerte:
Alarms.DateEvt: dieser Wert hat das Format 21.06.01 12:34:00 und
Shifts.Shift: dieser Wert hat das Format 15:45:00
Jetzt möchte ich die Werte von Alarms.DateEvt (allerdings nur die Uhrzeit) mit den Werten von Shifts.Shift vergleichen.
Ich hatte mir das so überlegt:
Uhrzeit1 = "Alarms.DateEvt".substr(-8);
Uhrzeit2 = "Shifts.Shift";
If Uhrzeit1 > Uhrzeit2 then .........;
Das funktioniert aber nicht.
Wiso?????
Vielleicht könnt ihr mir weiterhelfen.
Danke
Oliver
Hallo Oliver
Du verwendest substring falsch. Lies mal die Erklärung in selfhtml: http://www.teamone.de/selfhtml/tecl.htm#a27
grüße
axel
Hallo axel!
Du verwendest substring falsch. Lies mal die Erklärung in selfhtml: http://www.teamone.de/selfhtml/tecl.htm#a27
Es sieht zwar für Javascript ungewohnt einfach aus, erwarten tut man ja mindestens:
Uhrzeit1 = "Alarms.DateEvt".substr(this.length-8,8);
das liefert aber ebenso wie:
Uhrzeit1 = "Alarms.DateEvt".substr(-8);
das zwar nicht gewünschte, wohl aber zu erwartetende Ergebnis:
alert(Uhrzeit1); // '.DateEvt' anzeigen
http://developer.netscape.com/docs/manuals/js/client/jsref/string.htm#1194618
Gruss,
Carsten
Hallo Carsten
1. Oh-oh. Hab mich vertan und statt an substr an substring gedacht (und ja auch geschrieben) und da sind zwei Parameter Pflicht.
2. alert("Alarms.DateEvt".substr(-8)) liefert nicht ".DateEvt" sondern "Alarms.DateEvt". Ausprobiert mit IE 5.0. Was ich aber bei substr mit einem negativen Wert zu erwarten habe, hätte ich nicht vorherzusagen gewagt (geschweige denn, ob das bei jedem Browser gleich ist).
grüße
axel
Hallo axel
- alert("Alarms.DateEvt".substr(-8)) liefert nicht ".DateEvt" sondern "Alarms.DateEvt". Ausprobiert mit IE 5.0.
Stimmt, da ist ein Bug im IE.
Alle anderen Browser die ich getestet habe liefern da ECMA-262 normgerecht '.DateEvt'
(.. das kommt davon wenn man kein Windows benutzt)
Was ich aber bei substr mit einem negativen Wert zu erwarten habe, hätte ich nicht vorherzusagen gewagt (geschweige denn, ob das bei jedem Browser gleich ist).
Wie vorherzusagen gewagt? Steht doch so in der Doku, und ist z.b. in PHP genauso.
Gruss,
Carsten
Hallo Oliver!
Uhrzeit1 = "Alarms.DateEvt".substr(-8);
Uhrzeit2 = "Shifts.Shift";
bau hier mal
alert(Uhrzeit2);
rein, wunder dich ein wenig und ändere es dann auf
Uhrzeit2 = Shifts.Shift;
If Uhrzeit1 > Uhrzeit2 then .........;
Benutzte zum Testen den Netscape, öffne dort eine Javascriptkonsole, wirf einen Blick hinein, wundere dich noch ein wenig und korrigiere es zu:
If (Uhrzeit1 > Uhrzeit2)
{
// ...
}
Gruss,
Carsten