1

所以这是场景:我有一堆像这样的“价格”类的跨度:12,99€</p>

我需要在昏迷后拆分美分,这样我就可以用 css 设置它的样式 -> 完成了,美分有自己的类“美分”

现在我正在尝试用€欧元符号替换逗号“,”,并删除末尾的€符号'将其替换为空,空)

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

现在怎么样:12,99€ 我需要什么:12€99

我现在的代码:

<!-- the html part CANNOT BE MODIFIED -->
<span class="price">29,49€&lt;/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>

如果有人可以在这里帮助我,我将非常感激,因为我真的很想学习如何实现这一目标。它看起来并不太复杂,但无法使其工作,这令人沮丧。

4

3 回答 3

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

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

于 2012-07-17T19:57:23.400 回答
2

如何改用以下内容:

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

演示:http: //jsfiddle.net/8da54/11/

于 2012-07-17T20:01:39.753 回答
1

你不需要使用replace,你可以使用sliceor substr

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

演示

于 2012-07-17T20:12:30.593 回答