提前致谢。所以我有一个使用addlistener事件打开的自定义选项卡式infowindow。选项卡正常工作(图像,文本,链接)但我显示的数字值很奇怪,例如我的成本(在融合表中)是10.00但在信息窗口中它显示为10.00000000。如何将此舍入为2位有效数字?
我试过了:
这是我的代码的一部分
google.maps.event.addListener(layer, 'click', function(e) {
if(infowindow) infowindow.close();
else infowindow = new google.maps.InfoWindow();
infowindow.setContent(
'<div class="tabs">' +
'<ul>' +
'<li><a href="#tab-1"><span>tab 1</span></a></li>' +
'<li><a href="#tab-2"><span>tab 2</span></a></li>' +
'</ul>' +
'<div id="tab-1">' +
'<b><div class="infowindow_row">Cost:</b> ' + e.row['Cost'].value + '</div>' +
.........................
答案 0 :(得分:0)
非常感谢您查看问题并向更大的编码社区提供帮助,但这次我回答了我自己的问题(基于其他问题)。这个方法将数字作为一个字符串,我只需要parsefloat,将数字四舍五入,并将数字固定为2个位置,以便数字以0结尾。
var apDA = (Math.round(parseFloat(e.row['Cost'].value)*100)/100).toFixed(2) ;
有趣的是,在谷歌融合表中设置数字类型会影响数字在标准信息窗口中的显示方式,但不会像我上面那样解析出来。
答案 1 :(得分:0)
四舍五入乘以100,这一切都是多余的。 toFixed
已进行四舍五入。来自w3schools:
将数字转换为字符串,只保留两位小数:
var num = 5.56789;
var n = num.toFixed(2);
n的结果将是:
5.57