我有一个用于删除文本字段中逗号的运行代码, 但我只需要在输入的值为数字时删除逗号,然后删除逗号,但不删除文本
代码:
JS :
<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<script>
$(function(){
$("#textField").on('keyup', function(){
this.value=this.value.replace(/,/g, "");
});
});
</script>
HTML :
<input type="text" id="textField" placeholder="" value="" />
答案 0 :(得分:2)
使用isNaN()
方法检查它是否为数字
<script>
$(function(){
$("#textField").on('keyup', function(){
if(!isNaN(this.value.replace(/,/g, "")))
this.value=this.value.replace(/,/g, "");
});
});
</script>
或者您可以使用match()
方法
<script>
$(function(){
$("#textField").on('keyup', function(){
if(this.value.match(/^\d*,\d*$/))
this.value=this.value.replace(/,/g, "");
});
});
</script>
答案 1 :(得分:0)
if(this.value != null && this.value.match(/^\d{1,3}(,?\d{3})*?(.\d*)?$/)){
this.value=this.value.replace(/,/g, "");
}
答案 2 :(得分:0)
试试这个,
$("#textField").on('keyup', function(){
if(this.value.match(/[0-9]/g) != null) {
this.value=this.value.replace(/,/g, "");
}
});
答案 3 :(得分:0)
试试这个,不需要导入jQuery,在所有浏览器中都能正常工作。
<input type="text" id="textField" placeholder="" value="" onkeyup="this.value = this.value.replace(/,/g, '')"/>