从动态创建的数据进行计算的结果获取 NaN
Getting NaN as result of a calculation from data that was dynamically created
嗨,我在使用 change 方法更新计算结果时遇到问题。
计算是根据放置在表行中的动态创建的数据进行的。因此,每行的最后一列应显示价格 * 数量的总和(数量派生自动态创建的 select 元素(。创建每一行的方法是从自动完成输入框中选择一个选项。
每次用户从 dt 中的选择元素中选择选项时,都应更新该行的总数。 它第一次有效,但第二次结果列变为 NaN。
jSfiddle
我想我可能在如何使用
$("tr").not(":first").each(function(){// meant to not get the header but the rest of the rows which have the data for the calculations
我从字符串中减去 0 将其变成一个数字,所以我认为我不应该得到 NaN。我知道我搞砸了一些事情,对你来说似乎很明显,但对我来说却不是。
$("tr").not(":first").each(function(){ var qnty = 0; $('select').change(function(){ qnty = $('select').val(); calcTotal(); }) function calcTotal(){ var price = (($(".price").text()) - 0).toFixed(2) $(".total").text(qnty * price); } })
总结一下问题。 从第二次创建包含数据的行开始,计算将不起作用。结果列中的结果为 NaN。我显然希望结果是计算"总计"列中每一行的qnty *价格。
这里是jSfiddle来说明我的问题。
这将是
代码:
$("tr").not(":first").each(function(){
var qnty = 0;
var $row=this;
$('select',$row).change(function(){
qnty = $('select',$row).val();
calcTotal($row);
})
function calcTotal($row){
var price = (($(".price",$row).text()) - 0).toFixed(2)
$(".total",$row).text(qnty * price);
}
})
相关文章:
- JavaScript循环无法正确计算/显示结果
- if(foo!==null)的计算结果为true,即使foo为null
- ngIf的计算结果始终为true
- 我有一个字段计算,如果结果低于 60,则需要显示最小值
- 设置为负数的变量计算结果为true
- 如何在模态助推器中显示计算结果(JS)
- 计算趋势线并预测未来结果
- 在角度过滤器结果中包括计算值
- 将javascript计算结果自动放入HTML表单中
- JavaScript/jQuery:格式化日期计算结果的最佳方式
- 使用AngularJS从服务器获取计算结果
- 计算和触发onchange,并将结果写入html
- 如果ng-if的计算结果为false,AngularJS会使我的模型数据无效
- 计算结果Javascript中不同数字的数量
- javascript/html获胜't显示计算结果
- Javascript计算产生意想不到的结果
- 使正数的计算结果为真,使负数计算为假
- Node.JS- R,Python大量计算识别回调何时返回并存储该结果
- Javascript 无法计算结果
- Javascript测验结果计算/生成