删除输入格式

时间:2015-02-18 20:08:10

标签: javascript jquery html

我有一笔金额的输入。我把JS代码自动填充点(数千)并在开头添加$(例如:12.000美元)。数据发送到SOAP。所以我现在需要的是没有$和点数的数字。 ¿有什么建议吗?

JS CODE

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">

3 个答案:

答案 0 :(得分:0)

使用.replace()

var str = "$12.000";
var fStr = str.replace("$","").replace(".000","");

答案 1 :(得分:0)

如果您使用数千个点,则可以删除多余的字符并使用parseInt。

function unfill(input){
    aux = input.value.replace('$','');
    var num = aux.replace(/\./g,'');
    return parseInt(num, 10);
}

答案 2 :(得分:0)

替换$.的所有实例:

var input = document.getElementById('vida_ingreso');
var repl = input.value.replace(/\$|\./g, '');
alert(repl);

此处示例:http://jsbin.com/milugu/1/edit?js,output

修改 如果您需要将值作为数字,请使用:

var num = Number(repl);

http://jsbin.com/milugu/2/edit