2017-06-16 2 views
1

Ist es möglich, ein Minimum für ein Eingabefeld festzulegen, so dass es mehr als 0 ist, aber der Benutzer zum Beispiel noch 0,01 eingeben kann?Eingabe Anzahl Feld mehr als 0?

Ich habe dies versucht, aber es hat nicht funktioniert ..

<input required="" name="amount" type="text" min="0.01" value="0.00" /> 
+7

Eingangsnummer Feld ?? 'type =" Text "' ?? – user7929528

+5

benutze 'type =" nummer "' –

+1

_mehr als 0_ 'wert =" 0.00 "' – George

Antwort

1

Eine einfache Lösung könnte eine input Veranstaltung zu Ihrem sein, hinzuzufügen. Ich habe eine ID für diese Eingabe erhalten. Wenn die Eingabe weniger als 0,01 ist, dann setze sie zurück.

Auch step zu verwenden, um die Präzision zu steuern.

Auch könnte eine Situation input = 0.0111 sein, so in der else-Anweisung wir dies tun: Math.round(+this.value * 100)/100; (+ wird die Variable erzwingen Nummerntyp zu werden und verwenden Math.round den Eingang auf zwei Dezimalstellen gerundet zu bekommen)

document.getElementById('test').addEventListener('change', function (e) { 
 
    if(this.value < 0.01){ 
 
     this.value = ''; 
 
    } else { 
 
     this.value = Math.round(+this.value * 100)/100; 
 
    } 
 
});
<input required="" id="test" name="amount" type="number" step="0.01" value="0.00" />

+0

@Shaun aktualisiert verwenden, um eine Situation zu behandeln, die 0.0111 oder 0.0199 etc sein könnte –

3

Verwenden type="number" mit min="0" (Sie können auch step="0.01" Attribut verwenden können, um die einzelnen Schritte zu begrenzen, zu dem Wert eingestellt werden kann):

<input required="" name="amount" type="number" min="0" step="0.01" value="0.01" />

+1

Aber Sie können immer noch eingeben 0 – guest

+2

@guest Sie müssen JavaScript für diese – user7929528

0

In Ihrem Code type="text" Attribut min verfügbar für number, range & date Typen. Try this:

<input required="" name="amount" type="number" min="0.01" value="0.01" /> 
0

bereits.

<input required="" name="amount" id="amount" type="number" min="0.01" 
value="0.00" onblur="return validate(this);" /> 
    <script type="text/javascript"> 
function validate(amount){ 
    if(parseFloat(amount.value)<=0){ 
     amount.value = ""; 
     return false; 
    } 
    return true; 
} 
</script> 
Verwandte Themen