1

我想知道,有什么方法可以获取包含数字数据的所有元素,即 s 等divspan我想要做的是获取所有这些,然后使用货币格式化程序 jquery 插件对它们进行格式化。我现在使用的代码是:

var options = {
    symbol: "",
    decimal: ".",
    thousand: ",",
    precision: 2,
    format: "%s%v"
};

$(".namount").each(function () {
    var formattedNum = accounting.formatMoney($(this).text(), options)
    $(this).html(formattedNum);
});

$(".totalsale").each(function(){
    var formattedNum = accounting.formatMoney($(this).text(), options)
    $(this).html(formattedNum);
});

$(".totalpurchase").each(function(){
    var formattedNum = accounting.formatMoney($(this).text(), options)
    $(this).html(formattedNum);
});    

对于不同的元素,还有 4 到 5 个类似的each循环调用。问题是,这样做不会有效率。有没有其他方法可以实现这一点。

谢谢

4

2 回答 2

0

由于您有一个类选择器,这是最好的方法之一。我要做的唯一更改是使用多个选择器并使用.text()方法更新元素中的值

$(".namount, .totalsale, .totalpurchase").text(function (idx, text) {
    return accounting.formatMoney(text, options)
});

您可以想到的另一个可能的更改是使用父容器元素缩小搜索上下文

于 2013-07-13T07:19:35.223 回答
0

您可以按照建议使用类选择器来做到这一点,也可以使用正则表达式来实现。

参考这个

jQuery 选择器正则表达式

于 2013-07-13T07:30:28.107 回答