我有一个发送货币价值的表格,例如
<input type="text" name="amount" value="N50,000.00 NGN" />
<input type="button" value="submit">
我想删除金额字段中的所有字符,只留下此格式的数字;
<input type="text" name="amount" value="50000" />
<input type="button" value="submit">
使用javascript执行此操作的最佳方法是什么?
答案 0 :(得分:2)
使用
Number('N50,000.00 NGN'.replace(/[a-z, ]/gi,''));
如果只想要整数部分,请使用:
parseInt(Number('N50,000.00 NGN'.replace(/[a-z, ]/gi,'')),10);
replace
部分首先从字符串中删除所有字母字符,逗号和空格。
答案 1 :(得分:2)
试试这个
var i = "N50,000.00 NGN";
parseInt(i.replace(/[^\d\.]/gi, ""), 10);
在线示例: http://jsbin.com/ojumir
答案 2 :(得分:0)
您可以尝试浏览字符串并获取数字字符并将其附加到结果字符串。我不知道这是否是最好的方法,但它是有效的方法。
var res = "";
for (var c in str) { if (str[c].match(/\d/)) { res += str[c]; } }
答案 3 :(得分:0)
试试这个
<script type="text/javascript" language="javascript">
function doWork() {
var amount = document.getElementsByName('amount');
var str = amount[0].value;
var temp = '';
for (i = 0; i < str.length; i++) {
if (!isNaN(str[i]))
temp += str[i];
}
amount[0].value = temp;
}
</script>
<input type="text" name="amount" value="N50,000.00 NGN" />
<input type="button" value="submit" onclick="doWork();">
答案 4 :(得分:0)
首先想你要做的是使用类似的东西从数字中删除字符串或值
<input type="text" name="amount" value="N50,000.00 NGN" />
<input type="button" value="submit">
var amount = $('input[name=amount]').val().replace(/[A-Za-z$-]/g, "");
amount=amount.replace(",", "");
amount=parseInt(amount).toFixed(0);
这是一个工作示例
答案 5 :(得分:0)
<script type="text/javascript" language="javascript">
function doWork() {
var amount = document.getElementsByName('amount');
amount[0].value = parseInt(amount[0].value.replace(/[^0-9.]/g, "")).toFixed(0);
}
</script>
<input type="text" name="amount" value="N50,000.00 NGN" />
<input type="button" value="submit" onclick="doWork();">