Javascript 从两个不同的ajax结果中添加两个数字变量
我想添加两个数字并计算两个不同ajax调用的总数,这样我就可以将总值附加到dom中Javascript 从两个不同的ajax结果中添加两个数字变量,javascript,jquery,ajax,ecmascript-5,Javascript,Jquery,Ajax,Ecmascript 5,我想添加两个数字并计算两个不同ajax调用的总数,这样我就可以将总值附加到dom中 $.ajax({ url: "@Url.Action("MonthlyReport")", data: { id: id }, success: function (data) { var total = 0; for (va
$.ajax({
url: "@Url.Action("MonthlyReport")",
data: { id: id },
success: function (data) {
var total = 0;
for (var i = 0; i < data.length; i++) {
// Create our number formatter.
total += data[i].interestAmountPerMonth
}
var formatter = new Intl.NumberFormat('en-US', {
style: 'currency',
currency: 'USD',
});
const totalAmountAccrued = formatter.format(total)
$('#totalAmountAccrued').append(totalAmountAccrued)
},
error: function (req, status, error) {}
});
我想实现这样的功能:在ajax调用上方使用let声明totalamountacrued和amountwritenoff,让totalamountacrued=totalamountacrued+amountwritenoff 就像让所有人都后悔
从const totalamountacrued和const amountwritenoff中删除const。在组合多个请求时,可以使用$ 使用Promise.all,当所有承诺都得到解决时触发
function makeFetch(url, data) {
return $.ajax({url: url, data: data})
}
Promise.all([
makeFetch('@Url.Action("MonthlyReport")', {id: id}),
makeFetch('@Url.Action("GetAllLoan")', {id: id})
])
.then(([monthlyReport, allLoan]) => {
const totalAmountAccrued = monthlyReport.reduce((sum, data) => sum + data.interestAmountPerMonth, 0)
const amountWrittenOff = allLoan.amountWrittenOff
const overallTotal = totalAmountAccrued + amountWrittenOff
})
有什么问题吗?您可以将这两个值相加。
function makeFetch(url, data) {
return $.ajax({url: url, data: data})
}
Promise.all([
makeFetch('@Url.Action("MonthlyReport")', {id: id}),
makeFetch('@Url.Action("GetAllLoan")', {id: id})
])
.then(([monthlyReport, allLoan]) => {
const totalAmountAccrued = monthlyReport.reduce((sum, data) => sum + data.interestAmountPerMonth, 0)
const amountWrittenOff = allLoan.amountWrittenOff
const overallTotal = totalAmountAccrued + amountWrittenOff
})