Ошибки формата чисел в пользовательском информационном окне Google Fusion Tables - PullRequest
0 голосов
/ 17 февраля 2012

Заранее спасибо. Так что у меня есть пользовательское информационное окно с вкладками, которое открывается с помощью события addlistener. Вкладки работают правильно (изображения, текст, ссылки), но отображаемые значения чисел странные, например, моя стоимость (в таблицах слияний) равна 10,00, но в информационном окне она отображается как 10,00000000. Как округлить это до 2 значащих цифр?

Я пробовал:

  1. установка формата в таблицах Google Fusion.
  2. с использованием JavaScript, например Math.round (((e.row ['Cost']. Value) * 100) / 100). Интересно, что это просто удаляет все десятичные разряды и выдает 10.

Вот часть моего кода

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>' +     
 .........................

Ответы [ 2 ]

0 голосов
/ 13 декабря 2012

Округление с умножением на 100 и всем лишним. toFixed уже выполняет округление. Из w3schools :

Конвертировать число в строку, сохраняя только два десятичных знака:

var num = 5.56789;

var n = num.toFixed (2);

Результат n будет:

5,57

0 голосов
/ 24 февраля 2012

Что ж, спасибо за внимание к проблеме и большое сообщество программистов за то, что они так полезны, но на этот раз я ответил на свой вопрос (на основе других вопросов).Этот метод выводит числа в виде строки, мне просто нужно было разобрать их, округлить число и зафиксировать число в 2 местах для случаев, когда число заканчивалось на 0.

var apDA =  (Math.round(parseFloat(e.row['Cost'].value)*100)/100).toFixed(2) ;

Интересно, что установкаТип числа в таблицах Google Fusion будет влиять на то, как число будет отображаться в стандартном информационном окне, но не на то, когда оно будет проанализировано, как я это делал выше.

...