jQuery替换每个div中字符串中的字符和符号,逗号由€和€替换为空

时间:2012-07-17 19:54:44

标签: javascript jquery string replace split

所以这是场景: 我有一堆"价格"像那样:12,99€

我需要在昏迷后拆分美分,这样我就可以用css调整它的样式 - >这完成了,美分得到了自己的班级"美分"

现在我试图取代昏迷","按€欧元符号,并删除最后的€符号'将其替换为空,无空白

我希望这是有道理的,这是一个例子......:

现在如何:12,99€ 和 我需要的是:12€99

我的代码现在:

<!-- the html part CANNOT BE MODIFIED -->
<span class="price">29,49€</span>

<script>
jQuery(".price").each(function() {
var newText = jQuery(this).text().split(",").join("</span>,<sup class='cents'>");
newText = "<span class='euros'>" + newText + "</sup>";
jQuery(this).html(newText);
});

// Tryed to replace euro symbol by nothing but doesn't work //
var value = jQuery(".cents").val()+"";
value.replace("€", "");
var val = jQuery(".cents").val();
</script>

如果有人可以帮助我,我会非常感激,因为我真的想学习如何实现这一目标。它看起来并不复杂,但却无法让它变得令人沮丧。

3 个答案:

答案 0 :(得分:2)

$(".price").text( function(i, oldtext){
    return oldtext.replace("€","").replace(",","€")
});

http://jsfiddle.net/8da54/9/

答案 1 :(得分:2)

如何使用以下代码:

$(".price").html(function(i, val) {
    val = val.split(",");
    return "<span class='euros'>" + val[0] + "</span>" + "€" +
        "<sup class='cents'>" + val[1].replace("€", "") + "</sup>";
});

DEMO: http://jsfiddle.net/8da54/11/

答案 2 :(得分:1)

您无需使用replace,可以使用slicesubstr

$(".price").html(function(i, oldVal) {
    var value = oldVal.split(",");
    return "<span class='euros'>" + value[0] + "€</span>" +
        "<sup class='cents'>" + value[1].slice(0, -1) + "</sup>";
});

demo