在我的系统中,var PRICE将具有不同的格式,具体取决于用户设置的CURRENCY配置。所以我可以获得如下值:
a)价格:4.5美元|| b)价格:4.5€|| c)价格:Bs。 4.5 || d)价格:4.5₵
我不知道货币符号在之前是还是之后是,我不知道它将是什么符号(它的OpenERP框架因此不能改变格式)
尽管有货币符号,我如何得到这个数字?
答案 0 :(得分:1)
一旦你得到字符串,你可以替换每个非数字字符和点:
var number = '$ 4.5'.replace(/[^\d\.]/g, '');
然后你可以解析它:
number = parseFloat(number);
//Alternatively
number = +number;
答案 1 :(得分:1)
我通过使用JQuery替换任何不是数字或''的字符来解决您的问题。 (点)。
我创建了一些带有这样值的跨度:
<span>$4.10</span>
<span>£7.76</span>
<span>€23.44</span>
然后创建了一些JQuery来提醒值:
$("span").each(function(){
var a = $(this).text().replace(/[^0-9.]/g, "");
alert(a);
});
这是一个你可以搞砸的JSFiddle:http://jsbin.com/xelameki/1/edit/
我希望它有帮助=)
答案 2 :(得分:0)
我做了以下测试:
$(document).ready(function(){
var price1 = "$ 4.5";
var price2 = "4.5 €";
var price3 = "Bs. 4.5";
var price4 = "4.5 ₵";
$("#test").append(price1.split(" ")[1]);
$("#test").append(price2.split(" ")[0]);
$("#test").append(price3.split(" ")[1]);
$("#test").append(price4.split(" ")[0]);
});