如何使用javascript将字符串从文本框转换为数字?

时间:2015-01-19 05:24:02

标签: javascript jquery

我有一个输入值 20,466,000.00 的文本框。我想只返回值20466000而不用逗号和小数点。我尝试了以下方法:

// Get value
var nca_balance = $("#nca-balance").text();
var nca_amount = parseInt(nca_balance.replace(",", ""),10);

alert(nca_amount);

但它只返回 20466 的值?为什么?我的预期结果必须是20466000.请帮助我的代码。感谢

3 个答案:

答案 0 :(得分:6)

这个怎么样:

parseInt("20,466,000.00".replace(/,/g, ""), 10)

答案 1 :(得分:4)

因为默认情况下替换正在替换第一个逗号,所以使用g替换正则表达式/,/g中的全局选项,

var nca_balance = $("#nca-balance").text();
var nca_amount = parseInt(nca_balance.replace(/,/g, ""),10);
alert(nca_amount);

    var nca_balance = $("#nca-balance").text();
    var nca_amount = parseInt(nca_balance.replace(/,/g, ""), 10);
    alert(nca_amount);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<span id="nca-balance">20,466,000.00<span>

答案 2 :(得分:0)

您必须使用regular expression而不是replace函数,因为替换函数将仅替换第一个匹配的字符。

&#13;
&#13;
nca_balance = "20,466,000.00";
var nca_amount = parseInt(nca_balance.replace(/,/g, ''));
alert(nca_amount);
&#13;
&#13;
&#13;

正则表达式/,/g将全局替换所提供字符的所有逗号。