首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >显示数字2小数

显示数字2小数
EN

Stack Overflow用户
提问于 2016-11-26 22:03:15
回答 2查看 175关注 0票数 0

我有3个滑块的代码,它将滑块的所有3个值加在一起并显示在页面上,我希望它在逗号后面用2个小数显示。我试过使用.toFixed(2),但我不知道该把它准确地放在哪里。这是我的代码:

代码语言:javascript
运行
复制
<div class="wrapper2">
  <input class="slider" id="ram" data-slider-id='ex1Slider' type="text" data-slider-min="0" data-slider-max="10" data-slider-step="1" />
      <hr />

  <input class="slider" id="diskSpace" data-slider-id='ex1Slider2' type="text" data-slider-min="0" data-slider-max="100" data-slider-step="10" />
       <hr />
      <input  class="slider" id="cpu" data-slider-id='ex1Slider3' type="text" data-slider-min="0" data-slider-max="4" data-slider-step="1" />

       <hr />

 <div  id = "info"></div>

代码语言:javascript
运行
复制
var minSliderValue = $("#ram").data("slider-min");
var maxSliderValue = $("#ram").data("slider-max");

$('#ram').slider({
    value : 0,
    formatter: function(value) {
        return 'RAM: ' + value + 'GB';
    }
});

$('#diskSpace').slider({
    value : 0,
    formatter: function(value) {
        return 'Disk Space: ' + value + 'GB';
    }
});

$('#cpu').slider({
    value : 0,
    formatter: function(value) {
        return 'CPU : ' + value + ' Cores';
    }
});

// If You want to change input text using slider handler
$('.slider').on('slide', function(slider){

  var ram = $("#ram").val()*3.50;
  var diskSpace = $("#diskSpace").val()*1.20;
  var cpu = $("#cpu").val() * 6.30;
  $("#info").html(parseInt(ram)+ parseInt(diskSpace)+ parseInt(cpu));

});


// If you want to change slider using input text
$("#inputValue").on("keyup", function() {
    var val = Math.abs(parseInt(this.value, 10) || minSliderValue);
    this.value = val > maxSliderValue ? maxSliderValue : val;
    $('#ram','diskSpace','cpu').slider.toFixed(2)('setValue', val);
});

Jsfiddle:http://jsfiddle.net/4c2m3cup/34/

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-11-26 22:11:35

将总结代码更改为

代码语言:javascript
运行
复制
$('.slider').on('slide', function(slider){

  var ram = $("#ram").val()*3.50;
  var diskSpace = $("#diskSpace").val()*1.20;
  var cpu = $("#cpu").val() * 6.30;
  var totalSum=(parseFloat(ram)+ parseFloat(diskSpace)+ parseFloat(cpu)).toFixed(2);
  $("#info").html(totalSum);

});

希望它能帮上忙

票数 1
EN

Stack Overflow用户

发布于 2016-11-26 22:24:14

你是在解析一个int。当解析为int时,就失去了小数位。

代码语言:javascript
运行
复制
$("#info").html(parseInt(ram)+ parseInt(diskSpace)+ parseInt(cpu));

您可以将它们相加并使用x.toFixed(2)。这将给你两个小数位,只需按需要改变数字。

代码语言:javascript
运行
复制
$("#info").html((ram + diskSpace + cpu).toFixed(2));
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40823621

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档