1

我试图计算多个 div 的价格 * 输入值,但不知道该怎么做(使用 .each()???) 。

这是我的小提琴:http: //jsfiddle.net/V5hrY/2/

你可以看到我评论了不能正常工作的部分:

>//HAVING TROUBLE HERE!!!
$('.total p span').each(function(){
        $(this).html(
            $('.total p span').closest(".info").find('.price p span').html() 
            * 
            $('.total p span').closest(".info").find('.ticket input').val());
    });

大多数部分都运行良好,除非您在不同的输入字段中有几个整数并选择不同的单选按钮,然后各个计算都将关闭。特别是因为我对 .each() 或循环的了解非常有限,同时将特定事物计算到每个 div 中的特定总数。

如果不清楚,请告诉我,它基本上是.each()正确的//HAVING TROUBLE HERE.

另外,如果有人也可以为我推测这个答案。由于某种原因,我无法在小提琴上重现此错误,但这是我在我的网站上遇到的另一个错误。在初始页面加载时,如果我没有在单选按钮上选择任何内容并在第二个或第三个上选择一个值ul......总计返回总计$NaN,直到我单击所有输入字段,然后它开始正确计算。

提前感谢您的帮助!

4

1 回答 1

3

您想要做的是以下内容:

        $('.total p span').each(function(){
            $(this).html(
                $(this).closest(".info").find('.price p span').html() 
                * 
                $(this).closest(".info").find('.ticket input').val());
        });

你让它在每次迭代中更改所有这些 span 标签的内部 html 的方式 - 结果是 ALL 用为 LAST 元素计算的总和进行了更新。

于 2014-07-24T23:48:18.477 回答