我有一个购物车页面,其数量不正确,因为产品是批量销售的(1,10,100项)。
我想要达到的目标是获取包装中的商品数量,乘以数量并显示商品总数。
这里是JSFiddle和代码:
jQuery(document).ready(function($){
$( ".variant_title" ).each(function() {
var str = $(this).text();
var qty = $(this).nextUntil('input[id^=updates_]').val();
console.log(qty);
if ( str.indexOf('jackets') > -1 ) {
unities = str.slice(18,21);
if (unities === '100' || unities === '10 ') {
console.log(unities);
totalUnities = unities * qty;
console.log(totalUnities);
$(this).append('<br />' + totalUnities + ' Unities');
}
} else {
unities = str.slice(18,19);
if (unities === '1') {
console.log(unities);
totalUnities = unities * qty;
$(this).append('<br />' + totalUnities + ' Unity');
}
}
});
});
表格示例
我现在的问题是遍历DOM并获取描述旁边的输入字段的值并乘以。
有谁知道我在哪里弄错了?
由于
答案 0 :(得分:0)
var str = $(this).text();
var tr = $(this).closest('tr');
var qty = $(tr).find('input').val();
console.log(qty);
哟需要获取您的父元素(此处为tr)并找到输入以获取您的数量。希望这个帮助
答案 1 :(得分:0)
nextUntil(-selector - )方法选择所有先前元素到-selector-
使用这种方法来获得数量:
var str = $(this).text();
var qty = $(this).parents('.item').next('td.qty').find("input[id^='updates_']").val();