Probleme beim Überprüfen von Eingaben (jQuery)
Pat
- javascript
Hallo zusammen,
ich bastel seit einer Weile an einer Formularüberprüfung, die vor dem Absenden an den Server schon einmal ein paar Eingaben testet.
Jedoch steh' ich auf dem Schlauch und verstehe überhaupt nicht, warum die Überprüfungen nicht wirken.
Ich arbeite übrigens mit dem Framework jQuery.
Beim Absenden des Formulars wird per jQuery-Click-Event die Eingabe überprüft.
var akt_wert = $("#akt_wert").val();
var orderart_betrag = $("#orderart_betrag").val();
Hiermit lade ich die eingegebenen Werte in die beiden Variablen.
Diese stehen laut firebug auch alle richtig in den variablen nach dem Absenden.
var error = false;
if(orderart_betrag<=akt_wert){
$("#orderart_betrag").after('<div class="rot_info_js">Eingabe fehlerhaft!<br/>Betrag muss über dem akt. Kurs liegen!</div>');
error=true;
}
Genau hier ist das Problem:
habe ich in der Variable akt_wert bspw. die Zahl "40" stehen, bei orderart_betrag bspw. "111" sollte diese Überprüfung doch error auf false belassen.
Erst wenn die Zahl bei orderart_betrag (akt_wert=40) mit einer "5" beginnt, bspw. 500 schlägt die Überprüfung fehl und error bleibt bei false..
Es wird also irgendwie immer die erste Ziffer verglichen.
Hat einer eine Idee, warum?
Über Hilfe würde ich mich sehr freuen :)
Grüße, Pat
Hi Pat,
die Ausgabe von .val() ist ein String - und bei einem Vergleich wird immer der jeweils komplexere Typ (von einfach nach komplex: bool, number, string, array, object) verwendet.
Du musst also lediglich die Ausgabe von .val() mit .parseInt(string, 10) in eine Nummer umwandeln, bevor Du sie vergleichst.
Gruß, LX
Hi LX,
vielen liebe Dank! Jetzt klappts :-)
Du musst also lediglich die Ausgabe von .val() mit .parseInt(string, 10) in eine Nummer umwandeln, bevor Du sie vergleichst.
Schönen Sonntag noch!
Grüße