javascript - 表 td 循环中的 jQuery 计算
问题描述
我正在通过 PHP 获取 JSON 数据。我正在尝试在td
javascript 和 jQuery 的帮助下计算 的值,并计算如下所示的期初余额和期末余额,如下表示例。
这有可能吗?请帮助我如何在我的 jQuery 代码中使用 jquery 实现。
示例表 -
open bal as 0 first time
+ today in
- today out
=closing bal
并且
previous closing bal
将是open bal next day
。
公开赛 | 今天在 | 今天出去 | 闭幕式 |
---|---|---|---|
1 | 1 | 1 | 1 |
2 | 0 | 1 | 1 |
0 | 2 | 0 | 2 |
$.ajax({
type: "POST",
cache: false,
},
success: function(response) {
if (response == "ok") {
$.each(response.data, function(i, items) {
tableWithHeader.find('tbody').append(`
<tr>
<td>0</td>
<td>${items.inqty}</td>
<td>${items.outqty}</td>
<td></td>
</tr>
`);
});
}
});
解决方案
这里:
$.ajax({
type: "POST",
cache: false,
},
success: function(response) {
if (response == "ok") {
let openqty = 0 // declare outside of loop
let closeqty = 0 // declare outside of loop
$.each(response.data, function(i, items) {
closeqty = parseInt(items.inqty) - parseInt(items.outqty) + openqty
//calculate closeqty
tableWithHeader.find('tbody').append(`
<tr>
<td>${openqty}</td> // this will be 0 on first run
<td>${items.inqty}</td>
<td>${items.outqty}</td>
<td>${closeqty}</td>
</tr>
`);
});
openqty = closeqty // now set it for next loop to be same as closeqty
}
});
工作示例:
//$.ajax({
//type: "POST",
//cache: false,
//},
//success: function(response) {
//if (response == "ok") {
let openqty = 0 // declare outside of loop
let closeqty = 0 // declare outside of loop
const response = {
data: [{
inqty: "2",
outqty: "0"
}, {
inqty: "0",
outqty: "1"
}, {
inqty: "1",
outqty: "1"
}]
} // sample data
$.each(response.data, function(i, items) {
closeqty = parseInt(items.inqty) - parseInt(items.outqty) + openqty
//calculate closeqty
$("table").find('tbody').append(`
<tr>
<td>${openqty}</td> // this will be 0 on first run
<td>${items.inqty}</td>
<td>${items.outqty}</td>
<td>${closeqty}</td>
</tr>
`);
openqty = closeqty // now set it for next loop to be same as closeqty
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table>
<tbody>
</tbody>
</table>
推荐阅读
- cypress - 在 Cypress 中运行时应用程序抖动或抖动?
- java - 将 GMT+0 时间转换为 Android 上的本地时间,并以字符串形式给出 Hours/Min
- html - 用 \n 替换 enter 按键事件
- scala - 通过 Scala/Spark 列出 Amazon S3 中的对象
- atlassian-sourcetree - SourceTree 不会停止用密码对话框来烦我
- azure - Azure ADB2C cookie 大小,如何减小?
- javascript - 如何使用正则表达式匹配 ctx.url,如 ''/?id=xxx'' 和 koa 中的“/”?
- slack - 通过发布请求使用 Slack 机器人发送频道警报
- javascript - 删除突出显示的蓝色矩形以在织物 js 中进行选择
- c# - 触发器执行的次数