我正在.NET MVC项目中使用jQuery。
每当按下某个键或值在数量或金额字段中更改时,我都会使用以下代码更新表单上的总计。
$(document).ready(function() {
$('#@Html.IdFor(i => i.Form.Qty), #@Html.IdFor(i => i.Form.Amount)')
.change(calculateTotal)
.keyup(calculateTotal);
});
function calculateTotal() {
var qty = $('#@Html.IdFor(i => i.Form.Qty)').val();
var amount = $('#@Html.IdFor(i => i.Form.Amount)').val();
$('#@Html.Id("TotalCost")').val((qty * amount).toFixed(2));
}
每按一次键,输入(数量或数量)都会失去焦点。我已将此问题缩小到calculateTotal()
的最后一行。似乎设置TotalCost
的值会从事件的源输入中移除焦点。
我想找个工作。
根据@Christian Varga的建议,进一步的测试表明这不是一个jQuery问题。而是来自jquery.inputmask的干扰。