2016-07-18 47 views
1

如何自动替换带点输入中的所有逗号?在输入Javascript中用点替换逗号

我有这个输入:

<input type="text" id="test" onChange="testfunc()"> </input> 

这是我的工作至今:

function testfunc() { 
    var testnr = document.getElementById("test").value; 
    testnr = testnr.replace(/,/g, '.'); 
} 
+1

您可以简单地通过使用'document.getElementById(“test”)。value = testnr' –

回答

4

testnr将存储的价值,所以这testnr = testnr.replace(/,/g, '.');只会更改值不改变ÌNPUT,请试试这个:

<input type="text" id="test" onchange="this.value = this.value.replace(/,/g, '.')"/> 
+0

非常感谢你 –

+0

欢迎你,祝你好运。如果解决了这个问题,请将其标记为已接受(这样未来面对同样问题的人将能够轻松发现)。 –

+0

我会,但我必须再等2分钟。我已经尝试过这个c; –

3

后分配回输入的值将它分配给DOM元素,而不是相同的变量

function testfunc() { 
    var testnr = document.getElementById("test").value; 
    document.getElementById("test").value = testnr.replace(/,/g, '.'); 
} 
-1

检查这个拨弄它会建议你做

Fiddle

Javascript

var testnr = document.getElementById("test").value; 
testnr = testnr.replace(' ', '.'); 
alert(testnr) 

HTML

<input type="text" id="test" value="abcd efgh"> </input> 
0

你可以更简单的方式做到这一点,如果它只是一个输入元素的

<input type="text" onChange="this.value=this.value.replace(/,/g, '.');"/> 

如果有要应用此功能,那么这种风格使用多个元素

<input type="text" onChange="myFunction(this)"/> 

<script> 
function myFunction(e) { 
    e.value=e.value.replace(/,/g, '.') 
} 
</script>