使1个javascript / function一次影响多个类-怎么做?

时间:2019-05-13 21:57:11

标签: javascript jquery function

我在网页上使用以下代码,以便格式化某些数字(带有“ .pricetag”类),因为我需要在前端将其显示为货币(以千位分隔的逗号):

jQuery(document).ready(function($) {
    $.fn.digits = function(text){
        $(this).text(text.replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1,") + '€' );
    };
    var tempText = $.trim($(".pricetag").text());
    tempText = tempText.substr(0, parseInt(tempText.length) );
    $(".pricetag").digits(tempText);
});

到目前为止,一切都很好-代码可以正常工作,并且可以满足我的需要。

我的问题是我要使用该函数,而不仅仅是“ .pricetag”类。因此,现在我已经复制粘贴了代码,只是更改了目标类(“ .pricetag_2”等)。

我如何告诉一个版本的javascript /代码,以影响多个类(“ .pricetag”和“ .pricetag_2”),而不必复制粘贴相同的代码段(比如说10次)来针对10个不同的类别。

拥有太多代码有点过高,因为每次函数都完全相同。在CSS中,这非常简单,因为您可以通过用逗号分隔一段代码来一次影响多个类,但是如何在javascript中实现呢?

谢谢!

1 个答案:

答案 0 :(得分:0)

如果您所有的课程都以.pricetag开头,则可以尝试attribute-starts-with selector

$("[class^='pricetag']").digits(tempText);