如何删除跨度和更改价值?

时间:2014-01-26 10:31:16

标签: javascript jquery html

<span id="lblSellingPrice" class="productHasRef">£11.00</span>

嗨我有这个代码。我喜欢删除这个£然后将数字乘以2.50? 可能吗 幅度睡眠变量并不总是11。

6 个答案:

答案 0 :(得分:3)

获取跨度文本并在删除前面的“£”符号后将其解析为浮动。然后你可以乘以2.5

var price = parseFloat($('#lblSellingPrice').text().substring(1));
var calculationResult = price * 2.5;

如果你想把货币标记放回来并将其格式化为一个价格:

var newPrice = '£' + calculationResult.toFixed(2); //toFixed will give you 2 decimals

答案 1 :(得分:1)

Demo Fiddle

var num = parseFloat($('#lblSellingPrice').text().substring(1))*2.5

答案 2 :(得分:1)

您可以使用text()replace()方法

$('#lblSellingPrice').text(function(i,v){
   return '£'+(parseFloat(v.replace('£',''))*2.50).toFixed(2);
});

toFixed(2)可用于设置仅两个小数点

FIDDLE

答案 3 :(得分:1)

只需使用替换

 var num = $('#lblSellingPrice').text().replace('£', '');
 num = parseFloat(num)*2.5;

Demo

答案 4 :(得分:0)

这是这个问题的重复(或多或少):

Javascript extracting number from string

虽然如果您的输入数字中没有逗号,但您不需要像正则表达式那样复杂的东西,您只需使用简单的子字符串修剪货币标记:

http://www.w3schools.com/jsref/jsref_substring.asp

答案 5 :(得分:0)

试试这个:

$(document).ready(function () {
    text = $("#lblSellingPrice").text().replace("£", ""); //remove the pound sign
    num = parseInt(text); //parse the text into an integer
    alert(num*2.5); //alert the multiplied value
});

或更优化:

parseInt($("#lblSellingPrice").text().replace("£", "")) * 2.5 //parse the text of the span by removing the pound sign and then multiply it by 2.5