使用jquery分析表中的货币
如何安全地分析表中的货币,并比较总和是否高于19,90使用jquery分析表中的货币,jquery,Jquery,如何安全地分析表中的货币,并比较总和是否高于19,90 <tr class="Row1"> <td colspan="2" class="Column1 GrandTotal">Sum</td> <td class="Money"><b>23,15 €</b></td>
<tr class="Row1">
<td colspan="2" class="Column1 GrandTotal">Sum</td>
<td class="Money"><b>23,15 €</b></td>
</tr>
总和
23,15 €
如果使用点而不是逗号,则可以使用parseFloat轻松获取值。
如果要保留逗号,则需要将其替换为点。假设您知道每次都有两个十进制数字和相同的区域设置,如果没有,则需要首先检查并根据区域设置选择性地执行除法和分隔符提取。请注意,获取文本非常重要,这样可以省略任何封闭的HTML,而只获取文本节点
var total = 0;
$('table td.Money').each( function() {
var amount = $(this).text().replace(/[,.]/g,'');
total += parseFloat( amount ) / 100.0;
});
alert( total );
为什么不简单地用s/、//和parseFloat进行除100呢?谢谢,现在是对列求和,如何得到grandtotal@Sorpigal-10万,00怎么样?显然你也应该先脱掉月经。人们必须假定知道数字的格式,否则任何转换都毫无意义。我建议您应该使用s///g;然后s/,//g;和浮动。如果数字使用相反的约定,我的方法就失败了;如果有人忽略了正好提供两个后十进制数字,你的方法就失败了。人们必须选择最有意义的权衡。