我已经看过jQuery和添加列值的几个例子;然而,这些例子只有一列和一个值。将特定列相加或相乘
我想知道你是否有多列,那么你如何抓特定的?
例如,如果我想添加所有的数量列在一起或乘法费用列与其相邻数量?
到目前为止,我已经开始设置,但它不起作用。最初我试过
child_nodes.eq(2).text()
获得数量的列,但我知道我的逻辑是关闭的。
$(document).ready(function() {
$('#checkout').on('click', function() {
item_count();
});
});
function item_count(){
$('.product').each(function() {
//find number of child nodes
var child_nodes = $(this).text(); //children returns all
var count = "";
for (var i=0; i<child_nodes.length; i++){
//whole row output
count += child_nodes.eq(i).text() + "\n";
}
});
//var total = parseInt($('.product').val());
var total += parseInt(count);
//update value
return $('#nitems').text(total);
};
我刚开始尝试j查询,所以我觉得我的代码看起来很不喜欢,所以我模拟。
<h4>Shopping Cart</h4>
<table class='table'>
<thead>
<tr>
<th>Product</th><th>Unit cost</th><th>Quantity</th>
</tr>
</thead>
<tbody>
<tr class='product'>
<td>Milk Chocolate</td>
<td>7.48</td>
<td>5</td>
</tr>
<tr class='product'>
<td>Assorted Fine Chocolates</td>
<td>9.98</td>
<td>7</td>
</tr>
<tr class='product'>
<td>Assorted Milk & Dark Chocolates</td>
<td>12.98</td>
<td>9<td>
</tr>
<tr class='product'>
<td>Assorted Dessert Truffles</td>
<td>15.98</td>
<td>4</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class='row'>
<div class='col-md-4'>
<h3>Finalize Sale </h3>
<table class='table'>
<tr>
<td>Total Items</td>
<td><span id="nitems" >0</td>
</tr>
<tr>
<td>Subtotal</td>
<td><span id="subtotal" >0</td>
</tr>
<tr>
<td>5% Sales tax</td>
<td><span id="tax" >0</td>
</tr>
<tr>
<td>Total</td>
<td><span id="total" >0</td>
</tr>
<tr>
<td>Final amount (with 15% discount)</td>
<td><span id="final" >0</td>
</tr>
</table>
您能否提供比“不起作用”更多的细节?它是否给出错误?没有给你想要的结果? – Scottie 2015-03-13 14:06:04
唯一的错误是我显然缺少一个; ...从 'count + = child_nodes.eq(i).text()+“\ n”; } }); // var total = parseInt($('。product')。val()); var total + = parseInt(count);' – narue1992 2015-03-13 14:12:19
@Scottie除此之外,什么都不打印 – narue1992 2015-03-13 14:12:57