Diese Linie
iattn=$('#ATTN').val();
Gibt einen String zurück.
Wenn Sie möchten, um zu sehen, ob es in eine ganze Zahl umgewandelt werden kann, dann ist es das, was Sie wollen:
iattn=parseInt($('#ATTN').val());
if (iattn) {
alert("oh");
}
Verwenden parseFloat
statt parseInt
, wenn Sie eine allgemeine Zahl Test wollen.
Wenn Sie das Ergebnis der Analyse überprüfen, ob die Eingabe übereinstimmt, verwenden Sie so etwas wie diese:
iattn=$('#ATTN').val();
if (iattn == parseInt(iattn)) {
alert("oh");
}
Eine einfachere Kontrolle, die nicht wirklich etwas in eine Zahl umwandeln, und wird alle Nummer erlaubt Formate (zB 2.3, 0x3, +23) ist dies:
if (!isNaN(iattn)) {
alert("oh");
}
Kredit zu @pswg von einem Kommentar.
Haben Sie geöffnet Ihr Debugger und gesehen, was 'type iattn' genau entspricht? – arjabbar
Scheint so, als wäre 'typeof iattn' eine Zeichenkette, wenn Sie sie aus einem Text vom Eingabetyp erhalten. –
$ ('# ATTN'). Val() - Rückgabewert, nicht Nummer. –