Javascript 删除输入的格式
我输入了一个数量。我使用JS代码自动填充点(千),并在开始时添加$(例如:$12.000)。数据被发送到SOAP。所以我现在需要的是没有美元和圆点的数字。有什么建议吗 JS代码Javascript 删除输入的格式,javascript,jquery,html,Javascript,Jquery,Html,我输入了一个数量。我使用JS代码自动填充点(千),并在开始时添加$(例如:$12.000)。数据被发送到SOAP。所以我现在需要的是没有美元和圆点的数字。有什么建议吗 JS代码 function autofill(input){ aux = input.value.replace('$',''); var num = aux.replace(/\./g,''); if(!isNaN(num)){ num = num.toString().split('')
function autofill(input){
aux = input.value.replace('$','');
var num = aux.replace(/\./g,'');
if(!isNaN(num)){
num = num.toString().split('').reverse().join('').replace(/(?=\d*\.?)(\d{3})/g,'$1.');
num = num.split('').reverse().join('').replace(/^[\.]/,'');
input.value = '$'+num;
}else{
input.value = '$'+input.value.replace(/[^\d\.]*/g,'');
}
HTML输入
<input id="vida_ingreso" onkeyup="autofill(this)" type="text">
使用.replace()
如果您使用的是数千个点,您可以删除额外的字符并使用parseInt
function unfill(input){
aux = input.value.replace('$','');
var num = aux.replace(/\./g,'');
return parseInt(num, 10);
}
替换
$
和
的所有实例:
var input = document.getElementById('vida_ingreso');
var repl = input.value.replace(/\$|\./g, '');
alert(repl);
示例如下:
编辑:
如果需要该值作为数字,请使用:
var num = Number(repl);
当我阅读您的问题时,我的理解是:“我需要一个与输入相关联的底层对象,该对象定义了一个getter和setter”。那将是我的建议。为什么不将原始输入字符串存储在元素的数据属性上?假设这就是您想要的值,我的想法是也使用js删除该格式,但idk如何做到这一点。Ty bro.我接受了你的逻辑,在同一行中使用replace和其他replace是很有帮助的。这对我有帮助。很高兴有帮助,请考虑投票,并把它标记为正确答案。这是可能的,Y!
var num = Number(repl);