0
    <ul class="liste_couleur_qty">
         <li style="margin-bottom: 20px;">
                <dl>
                        <table width="200" border="0">
                      <tbody><tr>
                        <td width="50%">
                        <span style="display: block; font-size: 13px; line-height: 16px; margin-bottom: 2px;margin-right: 0px;margin-left: 20px;">Noir</span>
                    </td>

                        <td width="50%"><div class="add-to-cart">

                          <label for="qty-2195">qty :</label>

                          <input type="text" class="input-text qty calcul_qty_product" title="Qté" value="0" autocomplete="off" maxlength="5" data-product_color="127" id="qty-2195" name="qty-2195" onblur="addToCartPlus(2195, 127, this);">

                        </div></td>
                      </tr>
                    </tbody></table>
                    </dl>
            </li>

            <li style="margin-bottom: 20px;">
                <dl>
                        <table width="200" border="0">
                      <tbody><tr>
                        <td width="50%">
                        <span style="display: block; font-size: 13px; line-height: 16px; margin-bottom: 2px;margin-right: 0px;margin-left: 20px;">Blanc</span>
                    </td>

                        <td width="50%"><div class="add-to-cart">

                          <label for="qty-2196">qty :</label>

                          <input type="text" class="input-text qty calcul_qty_product" title="Qté" value="0" autocomplete="off" maxlength="5"  id="qty-2196" name="qty-2196" onblur="addToCartPlus();">

                        </div></td>
                      </tr>
                    </tbody></table>
                    </dl>
            </li>
<li style="margin-bottom: 20px;">
                <dl>
                        <table width="200" border="0">
                      <tbody><tr>
                        <td width="50%">
                        <span style="display: block; font-size: 13px; line-height: 16px; margin-bottom: 2px;margin-right: 0px;margin-left: 20px;">Blanc</span>
                    </td>

                        <td width="50%"><div class="add-to-cart">

                          <label for="qty-2196">qty :</label>

                          <input type="text" class="input-text qty calcul_qty_product" title="Qté" value="0" autocomplete="off" maxlength="5"  id="qty-2196" name="qty-2196" onblur="addToCartPlus();">

                        </div></td>
                      </tr>
                    </tbody></table>
                    </dl>
            </li>

                </ul> 

如何获取所有输入值,然后将它们全部添加到变量中。如果在 jquery 中,我知道该怎么做。

var length = $('liste_couleur_qty li input').length;
var input = $('liste_couleur_qty li input').val;
for(var i=0;i< length;i++){
  var result += input;
}

结果将得到所有值。但我的代码仍然无法工作。我的 jquery 代码有什么问题?如果我不想使用 jquery 只使用 javascript。我该怎么办?

4

4 回答 4

2

这应该适用于 jQuery:

var result = "";
$('liste_couleur_qty li input').each(function() {
   result += $(this).val();
});

第一:jQuery.val不是属性,而是方法。第二:它将返回结果集中第一个元素的值,而不是所有值。第三:在您的 for 循环中-我什至无法猜测您要做什么。您总是使用相同的值length时间。此外,一旦您尝试获取数值,您应该使用undefinedparseInt/parseFloat提到的方法

于 2012-11-18T13:15:57.067 回答
2
var result = 0;
$('.liste_couleur_qty li input').each(function(){
    result += $(this).val();
});
console.log(result);

这并不完全准确。正如@undefined 所指出的,您需要使用parseInt来执行数字加法而不是连接。那是:

result += parseInt($(this).val());
于 2012-11-18T13:16:04.417 回答
2

你的选择器什么都没有选择,你错过了.类选择器,也是val一个方法而不是一个属性,你可以使用each方法和parseInt函数:

var result = 0;
$('.liste_couleur_qty li input').each(function(){
     result += parseInt(this.value, 10);
});
于 2012-11-18T13:17:51.947 回答
0
var length = $('liste_couleur_qty li input').length;
var input = $('liste_couleur_qty li input').val();
for(var i=0;i< length;i++){
  var result += input;
}
于 2012-11-18T13:16:08.490 回答