【发布时间】:2019-05-28 01:12:42
【问题描述】:
我正在使用 Asp.net mvc core 2.2 当我在 jsfiddle.net 中尝试时,下面的计算工作正常但是计算不起作用,当我在 Visual Studio 中尝试时,它显示“0.00”,所以什么也不做。
- 我检查了参考链接存在
- 我在同一个视图中包含了脚本
我的查看代码:
代码从这里开始-table class="tbl table table-striped">
TABLE HEADERS
@{ foreach (var item in Model.Tblstsabit)
{
<tr style="padding:50px;">
<td style="text-align:center">
@Html.DisplayFor(c => item.StokKodu)
</td>
<td style="text-align:center">
@Html.DisplayFor(c => item.StokAdi)
</td>
<td style="text-align:center">
@Html.DisplayFor(c => item.SatisFiat1, new { @class = "unitprc" })
@*for this part I tried <input type="text" class="unitprc"> it works in jsfiddle.net but not in VS*@
</td>
<td style="text-align:center;">
<input type="text" class="qtt" />
</td>
<td style="text-align:center;">
<input type="number" max="100" class="col-9" />
</td>
<td style="text-align:center;">
<input type="number" max="100" class="col-9" />
</td>
<td style="text-align:center;">
<input type="text" readonly value="0.00" class="sum" />
</td>
<td style="text-align:center">
<button type="submit" class="btn btn-danger" asp-action="Remove" asp-route-stokkodu="@item.StokKodu">
<img src="~/resimler/garbage.png" />
</button>
</td>
</tr>
}
}
总和:
<div class="col-4">
<label>Total Sum</label>
<input id="gsum" value="0.00" readonly />
</div>
脚本:
<script>
$(".tbl").on("change keyup keydown paste propertychange bind mouseover", function () {
calculateSum();
});
// function
function calculateSum() {
var sum = 0;
$(".sum").each(function () {
if (!isNaN(this.value) && this.value.length != 0) {
var quantity = $(this).closest("tr").find("input.qtt:text").val();
var valor = $(this).closest("tr").find("input.unitprc:text").val();
var subTot = (quantity * valor);
$(this).val(subTot.toFixed(2));
sum += parseFloat(subTot.toFixed(2));
}
});
$('#gsum').val(sum.toFixed(2));
}
</script>
我一直在寻找这些代码大约 9 个小时,但找不到任何不工作的原因。 Foreach循环可能是原因吗? PS:如果你打算在 jsfiddle.net 中尝试,你应该在 table 标记之间编写代码,它有一个名为 class 的“cls”
【问题讨论】:
-
“当我在 Visual Studio 中尝试时计算不起作用” - “不起作用” 是什么意思?结果错误?脚本没有执行吗?有任何错误信息吗? ...
-
什么都不做。显示“0.00”
-
Results 部分与您的 ASP 代码不对应。它有“总和”,它不会出现在您的 ASP 中,但它省略了所有的
table、tr和td标记,它们 是 在您的 ASP 代码中。你能完成你的那部分问题吗? -
@trincot 嗨。总和部分位于底部部分,仅显示所有“总和”的总和,不需要在表中或其他地方“函数计算和()”通过 id '#gsum' 找到它。顺便说一句,代码有点长,在行中的“总和”之前不起作用
标签: jquery asp.net-core-mvc html-helper tag-helpers asp.net-core-2.2