2016-09-30 5 views
-2

ich alle nicht numerischen Zeichen einschließlich Dezimalstellen Streifen von diesem Wert das Dezimalsystem habe versucht Strippen, aber es funktioniert nichtWie aus einer Javascript-Wert

Hier ist, was ich

<input type="number" class="blah" id="myID" name="amount" value="0.07" step="0.01" min="0.02" max="99999.99"> 

function() { 
return document.getElementById("myID").value = newVal.replace(/[^0-9|-]/g, ""); 
} 

Werfen Sie einen Blick haben https://jsfiddle.net/sxmmsacx/

+2

'.replace (/ \ D +/g, '')' ' – Tushar

+0

ParseInt (document.getElementById ("myID"). Wert 10) '? – K3v1n

+3

Nun, das ist offensichtlich, dass 'newVal' nicht definiert ist. – plalx

Antwort

2

Sie haben einen Syntaxfehler in Ihrem regulären Ausdruck. Du hättest + verwenden sollen, um 1 oder mehr Nicht-Zahlen zu bezeichnen.

newVal.replace(/[^0-9]+/g, "");

+0

guten Fang haben. die Antwort – synthet1c

+0

das gleiche Ergebnis, bekomme ich 0.07 nicht 007 https://jsfiddle.net/sxmmsacx/2/ – affiliatex

+2

@affiliatex - Der JS-Code in Ihrer Geige tut nichts, weil es einen Fehler hat, der nichts mit der Regex zu tun hat: es versucht eine undefinierte Variable zu verwenden. Überprüfe die Dev-Konsole deines Browsers. – nnnnnn

0

versuchen, den Code unter Verwendung der unten

newVal.replace(/\D/g,''); 
+0

Gleiches Ergebnis https://jsfiddle.net/sxmmsacx/1/ – affiliatex

+0

Was ist die erwartete Ausgabe für das? – Clem

+0

Rückgabe document.getElementById ("myID"). Value.replace (/ [^ 0-9] +/g, ""); – Clem

Verwandte Themen