toLocaleString()无法正常显示错误

问题描述 投票:1回答:2

我正在尝试为中间的值整数和摘要编号的输入添加逗号。我已经添加

$summaryNumber.toLocaleString();

但没有任何作用。我想知道我做错了什么。

这是我正在与之合作的小提琴

https://jsfiddle.net/cmLkbq6e/2/

$(function(){
  $("#doughnutChart").drawDoughnutChart([
    { title: "test",         value : 150000000,  color: "#e65c53" },
    { title: "test", value:  150000000,   color: "#26a3b1" },
    { title: "test",      value:  250000000,   color: "#19818d" },
    { title: "test",        value : 200000000,   color: "#396b7e" },
    { title: "test",        value : 100000000,   color: "#a5a5a5" }
  ]);
});

这些是我试图瞄准的价值观

这是我试图定位的摘要编号

var $summaryTitle = $('<p class="' + settings.summaryTitleClass + '">' + settings.summaryTitle + '</p>').appendTo($summary);
var $summaryNumber = $('<p class="' + settings.summaryNumberClass + '"></p>').appendTo($summary).css({opacity: 0});

$summaryNumber.toLocaleString();
javascript jquery
2个回答
0
投票

在jsFiddle中,找到代码的下面部分并更改它,这是更新的JsFiddle:https://jsfiddle.net/cmLkbq6e/11/

Previously,

    function drawDoughnutText(animationDecimal, segmentTotal) {
      $summaryNumber
        .css({opacity: animationDecimal})
        .text((segmentTotal * animationDecimal).toFixed(1));
    }

After Modification,
    function drawDoughnutText(animationDecimal, segmentTotal) {
      $summaryNumber
        .css({opacity: animationDecimal})
        .text((segmentTotal * animationDecimal).toLocaleString());
    }

0
投票

问题是$summaryNumber是对象,它不是数字

因为我在你的代码中检查了它

  var $summaryNumber = $('<p class="' + settings.summaryNumberClass + '"></p>').appendTo($summary).css({opacity: 0});

这意味着一个对象,所以你的代码不工作,你应该做的事情如下:

 afterDrawed : function() {
    var number = parseFloat($('#doughnutChart .doughnutSummaryNumber').html());
     $('#doughnutChart .doughnutSummaryNumber').html(number.toLocaleString());   
    },
© www.soinside.com 2019 - 2024. All rights reserved.