gpt4 book ai didi

javascript - 如何将多个 Jquery ID 传递给一个函数?

转载 作者:行者123 更新时间:2023-12-03 00:24:28 39 4
gpt4 key购买 nike

我有两个以上与货币相关的字段,我需要对其进行格式化。我已经编写了格式化函数,但到目前为止我只能将一个字段/ID(即收入)传递给JS函数。如何将多个 ID 传递给这个通用函数,以便我可以使用这个通用函数格式化我的字段。

我想将通过 document.getElementById 获得的收入和交易值传递给 formatCurrency 函数?如何将多个 ID 传递给函数并将其设置为 ID?我尝试设置以下方式

 $("#Income").val(formatCurrency($("#Income").val())); 

但没有成功

function formatCurrency(amt){
amt = amt.replace("$", "");

if(amt && amt.split(".").length <= 2)
{
var formatter = new Intl.NumberFormat('en-US',
{
style: 'currency',
currency: 'USD',
minimumFractionDigits: 2
});
amt = formatter.format(amt);
}
document.getElementById("Income").innerHTML=amt;
//document.getElementById("Trade").innerHTML=amt;
}
formatCurrency(document.getElementById("Income").innerHTML);
//formatCurrency(document.getElementById("Trade").innerHTML);

如果收入=8000,输出应为 $8000.00如果 Trade=900 输出应该是 900.00 美元我只能实现收入,不能实现贸易,因为我无法将贸易传递为格式货币。

最佳答案

所以只需读取文本并将其输出到函数中即可。传递选择器。

function formatCurrency(selector) {
var elem = document.querySelector(selector)
var amt = elem.textContent.replace("$", "");
if (amt && amt.split(".").length <= 2) {
var formatter = new Intl.NumberFormat('en-US', {
style: 'currency',
currency: 'USD',
minimumFractionDigits: 2
});
amt = formatter.format(amt);
}
elem.textContent = amt;
}

formatCurrency("#one")
formatCurrency("#two")
<div id="one">$.99</div>
<div id="two">$1200.00</div>

如果你想让你的选择器可以匹配多个东西,那就是带有循环的querySelectorAll

function formatCurrency(selector) {
document.querySelectorAll(selector).forEach(function (elem) {
var amt = elem.textContent.replace("$", "");
if (amt && amt.split(".").length <= 2) {
var formatter = new Intl.NumberFormat('en-US', {
style: 'currency',
currency: 'USD',
minimumFractionDigits: 2
});
amt = formatter.format(amt);
}
elem.textContent = amt;
})
}

formatCurrency(".money")
<div class="money">$.99</div>
<div class="money">$1200.00</div>

关于javascript - 如何将多个 Jquery ID 传递给一个函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54152120/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com