jQuery部门 - 找到所有价格等级并划分

时间:2017-10-18 11:10:08

标签: javascript jquery math division

我有一个不同价格的物品页面,每个价格都在一个价格等级的范围内,我想做的是将所有价格的值更改为该值除以1.2。

$('.price').html() / "1.2";

现在我知道这不会起作用,因为格式是10,500英镑,例如,我在这里找不到类似的东西,但我想把10,500英镑的价值除以1.2并且有价值更新结果(£8,750)。到目前为止,我所尝试过的任何事情都让我无法取得进展。

3 个答案:

答案 0 :(得分:2)

添加一个测试按钮:

<button id="test-button">Test Currencies</button>

添加以下jQuery:

$('#test-button').on('click', function () {
    // Get currency elements
    var currencies = $('.price');
    var newSymbol = '£';
    var eRate = 0.8333;
    $.each(currencies, function (index, value) {
        // Change value to a number using regex
        var number = Number($(this).html().replace(/[^0-9\.]+/g, ""));
        // Assign new value and add number formatting
        $(this).html(newSymbol + (number * eRate).toFixed(2).toLocaleString('en'));
    });

});

希望它有所帮助。

答案 1 :(得分:0)

在这里: - )

经过测试和工作。

$("span").each(function() 
{
var strNewString = $(this).html().replace(',','');
$(this).html(strNewString / 1.2);
});

答案 2 :(得分:0)

function format_price(_input_str){
	var input_str=_input_str+'';    //if input integer convert to string
	input_str=input_str.replace(new RegExp(' ',"g"), ''); //if exist spaces
	input_str=input_str.replace(new RegExp('&#163;',"g"), '');    //if exist simbil £
	input_str=input_str.replace(new RegExp('&nbsp;',"g"), ''); //if wxist &nbsp;
	var input_int = parseInt(input_str)||0;
	if(input_int==0){ return  _input_str;} //return original string
	input_str=input_int+'';
	var out_str='';
	while(input_str.length > 3){
	 	out_str=input_str.substr(-3)+'&nbsp;'+out_str;
	 	input_str=input_str.substr(0,input_str.length-3);
	}
	if(input_str.length>0){out_str=input_str+'&nbsp;'+out_str;}
	out_str='&#163;&nbsp;'+out_str;
	return out_str;
}




   $('.price').each(function(){
      var this_price=$(this).html();
   	  $(this).html(format_price(this_price));
   });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

  <div class="price">12345</div>
  <div class="price">76 09</div>
  <div class="price">4576 09</div>
  <div class="price">45</div>
  <div class="price">&#163;&nbsp;12&nbsp;345&nbsp;678&nbsp;</div>