0
我有一个产品网页,将输入的成本,数量和服用的2添加输入字段
我已经想通了这里http://jsfiddle.net/61tch8md/大部分产品后吐出成本的多个级别(我相信)但我遇到的问题是,用户可以添加多行,每行只需要添加该行上的字段的数量和成本。现在,当我添加额外的行时,第一行将控制所有行的价格。
HTML
<table class="order-details">
<tbody>
<tr>
<td><input type="text" value="" placeholder="Description of Work" class="wei-add-field description 1" name="product-1-description" /></td>
<td><input type="text" value="" placeholder="QTY" class="wei-add-field quantity 1" name="product-1-quantity" /></td>
<td><span class="wei-price">$</span><input type="text" value="" placeholder="Unit Price" class="wei-add-field unit-price 1" name="product-1-price"/></td>
<td><span class="wei-price-total"></span></td>
<td> </td>
</tr>
</tbody>
</table>
<div class="wei-add-service"><a href="#" class="button-secondary wei-add-service-button">Add Item</a></div>
的JavaScript/jQuery的
jQuery("tr")
.keyup(function() {
var value = jQuery(".unit-price").val();
var value2 = jQuery(".quantity").val();
var total = value * value2;
jQuery(".wei-price-total").text(total);
})
.keyup()
var counter = 2;
jQuery('a.wei-add-service-button').click(function(event){
event.preventDefault();
counter++;
var newRow = jQuery('<tr><td><input type="text" value="" placeholder="Description of Work" class="wei-add-field description" name="product-' +
counter + '-description" /></td><td><input type="text" value="" placeholder="QTY" class="wei-add-field quantity" name="product-' +
counter + '-quantity" /></td><td><span class="wei-price">$</span><input type="text" value="" placeholder="Unit Price" class="wei-add-field unit-price" name="product-' +
counter + '-price"/></td><td><span class="wei-price-total">$49.99</span></td><td><a href="#" class="remove">remove</a></td></tr>');
jQuery('table.order-details').append(newRow);
});
jQuery('table.order-details').on('click','tr a',function(e){
e.preventDefault();
jQuery(this).parents('tr').remove();
});
在此先感谢。
我更新了它,现在它只编辑第一行。当我添加额外的行时,它们根本不会更新http://jsfiddle.net/61tch8md/1/ –
您需要使用事件委托来将处理程序绑定到动态添加的行。就像你对删除行的函数一样。我已经更新了答案,以显示如何编码。 – Barmar