繁体   English   中英

我如何解析在JavaScript内浮动一个php var

[英]How can i parseFloat a php var inside javascript

我需要parseFloat然后用逗号替换点:

sum="<?php echo substr($_tarif_membre,0,-2).'.'.substr($_tarif_membre,-2,2) ?>" *  $('#tarif_membre').val()
total_total= sum.replace('.',',')
$('#total_total').val(sum)

如果我不将php $('#tarif_membre').val()变量乘以$('#tarif_membre').val()它仍将结果显示为float:12.00(因为它是从php回显的),但是如果我乘以$('#tarif_membre').val()结果将显示12,为什么? 以及为什么replace方法不起作用(我需要显示逗号分隔的值)

在Javascript中,整数和浮点数没有区别。 var x = 12.00 ,转换回字符串时,仅显示“ 12”。

如果要显示格式化的数字,则必须将其保留为字符串( "12.00" ); 或者您需要一些行为类似于printf代码(没有Javascript;但是有一些实现它的Javascript库,例如在这里 ),可以使用任意多的小数来再次格式化它。

认为这是您要尝试执行的操作:

var sum = 12.00 * parseFloat($('#tarif_membre').val());
total_total= sum.toFixed(2).replace('.',',');
$('#total_total').val(total_total);

您可以在这里尝试

您应该不要使用引号,因为它是一个数字,然后parseFloat() #tarif_membre .val() ,因为它将是一个字符串,然后它们将键值保持在主要的小数位数,这里在该float上调用.toFixed() ,这将得到字符串"12.00" 您可以将它们替换为. , (我猜是国际格式吗?)然后将结果粘贴到#total_total ,尽管我不确定这一点。

对于另一个问题,为什么.replace()不起作用? 这是因为在您的代码中它是一个浮点数,而不是字符串,并且只有字符串才具有replace方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM