In diesem Beispiel Rückkehr:js if (Wert> 0!) Auf Anzahl der Eingabevalidierung falsch
<form name="someform" action="somepage.php" method="post">
<input name="length" id="length" type="number" min="1" oninput="validate()"/>
<input type="submit" id="submit" value="submit" />
</form>
ich die Submit-Button für längeren Wert deaktivieren möge, die nicht größer als 0 ist, ich habe min = "1" am Eingang, was gut funktioniert, wenn die Benutzer sich auf die Auf-/Ab-Tasten verlassen, um einen Wert einzugeben, aber es hindert sie nicht daran, eine 0 mit der Tastatur einzugeben. Also habe ich die folgende Validierungs-js-Funktion hinzugefügt.
Diese Funktion gibt valid = true zurück, wenn Sie eine 0 in das Feld eingeben und ich verstehe nicht warum. Wenn Sie eine Zahl in der Box haben und sie löschen, so dass die Box leer ist, wird false zurückgegeben, aber 0 ist hier immer wahr.
edit: Sie können eine negative Zahl eingeben, z. B. -5, und das gibt auch wahr zurück.
Ich habe ein jsbin Beispiel hier: http://jsbin.com/qatekupuzu/edit?html,js,console,output
Jede Hilfe wäre diese Arbeit richtig geschätzt zu bekommen.
auch Variablenname - 'Länge' ist nicht ideal, sollte Wert oder etwas anderes sein – LYu
lyu, Länge ist die Bezeichnung auf dieser Eingabe in der Live-Form, da der Wert die Länge eines Elements ist. –
Ich denke, das Problem Ihres Kommentars ist, Sie brauchen '===' da in js '" "== 0 wird True zurückgegeben – LYu