Web开发jQuery百分比

时间:2017-08-24 17:25:50

标签: javascript jquery

基本上我有两个div;一个div有旧价格,另一个div有新价格。我想让第二个div取第一个div中的字符串,将其转换为数字,从中取20%,然后用该数字替换第二个div。

我自己设法生成了一些代码,但是我只能让它工作一次。我希望每次都能工作,即使div具有相同的类但具有不同的值。

<div>£<span class="old"><s>599</s></span></div>First Div
<div>£<span class="new">599</span></div> Second Div

var $x = $(".old").text();
var iNum = parseInt($x);
var $y = 0.20;
var result = Math.round(iNum * $y);
var $newPrice = $(".new").text($x - result);

2 个答案:

答案 0 :(得分:0)

除了奇怪的单引号,你混合你的变量。试试这个:

var $x = $(".old").text();
var iNum = parseInt($x);
var $y = 0.20;
var result = Math.round(iNum * $y);
$(".new").text(iNum - result);

答案 1 :(得分:0)

您只需将代码包装在function中即可。这是一个有效的例子,每当你运行它时,它会改变旧的&#34; value(只是为了表明它可以多次运行)。

&#13;
&#13;
function getPercent() {
  var $x = $(".old").text();
  var iNum = parseInt($x);
  var $y = 0.20;
  var result = Math.round(iNum * $y);
  var $newPrice = $(".new").text($x - result);
  $(".old").text(parseInt($(".old").text()) - 10);
}

document.getElementById('runBtn').addEventListener('click', getPercent);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>£<span class="old"><s>599</s></span></div>First Div
<div>£<span class="new">599</span></div> Second Div

<br /><br />

<button id="runBtn">Run</button>
&#13;
&#13;
&#13;