纯Javascript-将数字转换为%

时间:2019-05-14 09:50:40

标签: javascript

我的程序在01之间吐出一个数字,但我无法更改。我需要将其变成%用作CSS选择器的变量。

<div id="Value">0.50</div>

<script>
var element = document.getElementById("Value");
var percent =  element * 100;
</script>

但是我打算在末尾放置一个%符号,以便执行此操作:

document.getElementById("circle").style.marginLeft = percent;

任何帮助将不胜感激,谢谢。

5 个答案:

答案 0 :(得分:2)

字符串串联:

document.getElementById("circle").style.marginLeft = percent + "%";

由于"%"是字符串,因此percent将转换为字符串,然后结果将是百分比值,后跟"%"


Federico pointed out一样,您应该使用.value(如果id="Value"元素是字段元素[inputtextarea或{{ 1}}])或select.textContent(如果不是)。在您的情况下,它是一个div,因此.innerHTML会很有意义:

textContent

答案 1 :(得分:1)

尝试

circle.style.marginLeft = Value.innerText*100 + '%'
<div id="Value">0.50</div>
<div id="circle">&#9673;<div>

答案 2 :(得分:0)

Rating.joins(:user).merge(User.where.not(confirmed_at: nil))
  

在字符串上使用时,+运算符称为串联运算符。

参考:Javascript Operators

答案 3 :(得分:0)

这应该解决它。

union

在Javascript中,您可以使用'+'运算符在本地连接一个int和一个字符串,这意味着-

document.getElementById("circle").style.marginLeft = percent+"%";

结果是b ='5%'

答案 4 :(得分:0)

使用innerHTML从元素获取文本

var element = document.getElementById("Value").innerHTML;
var percent =  parseFloat(element)*100;
percent+='%';
console.log(percent)
<div id="Value">0.50</div>