问题描述
我的桌子上有一个逗号分隔的数字。但是我点击的js只给出逗号前的值,而不是整数。
<td class="amt">1,000,000.50</td>
下面是我的jQuery,它警告1.00
而不是整个值:
$(".amt").click(function(){
var t = parseFloat($(this).text()).toFixed(2);
alert(t);
})
此代码会提示确切的数字,但是我怎么能得到一个数字呢?
$(".amt").click(function(){
var t = $(this).text();
alert(t);
})
解决方法
您很亲密,但是在尝试使用parseFloat
将数字字符串转换为浮点数之前,必须首先从字符串中删除所有逗号。您可以使用
textString.replace(/,/g,'');
工作示例:
$(".amt").click(function(){
var textString = $(this).text();
var numString = textString.replace(/,'');
var numAsFloat = parseFloat(numString ).toFixed(2);
console.log("Float value = "+numAsFloat);
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="amt">1,000,000.50</div>
,
您可以使用regex
删除逗号,并使用parseFloat
作为
parseFloat($(this).text().replace(/,'')
$(".amt").click(function(){
var t = parseFloat($(this).text().replace(/,''));
alert(t)
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table>
<tr>
<td class="amt">1,000.50</td>
</tr>
</table>