Pat: Probleme beim Überprüfen von Eingaben (jQuery)

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 &uuml;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

  1. 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

    --
    RFC 1925, Satz 6a: Es ist immer möglich, einen weiteren Umweg einzufügen.
    RFC 1925, Satz 11a: Siehe Regel 6a
    1. 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