我为plus&做了扩展减去产品页面中的数量,您可以查看http://www.opencart.com/index.php?route=extension/extension/info&extension_id=25282&filter_search=addplusminus&filter_license=0
我现在需要的是它默认情况下出现在Opencart主页上的Feature Product的工作。
到目前为止,我已经看到在feature.tpl和feature.php上只有产品ID在“ cart.add()”功能中发送,只有我需要弄清楚发送当前数量的产品“ cart.add()”功能,但我无法弄清楚经过多次工作...
这是我的代码:
<div class="form-group">
<i class="fa fa-minus pull-left" id="minus-qty"></i>
<label class="control-label" for="input-quantity"><?php echo $entry_qty; ?></label>
<input type="text" name="quantity" value="<?php echo $minimum; ?>" size="2" id="input-quantity" class="form-control" />
<input type="hidden" name="product_id" value="<?php echo $product_id; ?>" />
<i class="fa fa-plus" id="plus-qty"></i>
</div>
//for add button
<button type="button" onclick="var cartqty = $('#input-quantity').val();alert(cartqty);cart.add('<?php echo $product['product_id']; ?>',cartqty);">
<i class="fa fa-shopping-cart"></i>
<span class="hidden-xs hidden-sm hidden-md"><?php echo $button_cart; ?></span>
</button>
现在它只为一种产品而不是为所有人工作,我如何为所有人工作......
在此先感谢。
答案 0 :(得分:-1)
首先,您需要将所有#
更改为.
,不得在页面中重复id
。它必须是独一无二的。
第二,你需要改变:
$('#input-quantity')
为:
$(this).next('.input-quantity')
或:
$(this).prev('.input-quantity')
现在这里是您更正的代码,javaScript部分:
<script>//minus quantity
$('.minus-qty').css("margin-top", ".2em");
$('.minus-qty').click(function(){
var crtval = $(this).next('.input-quantity').val();
if(crtval < 2){
alert('Quanty Must Be 1');
}
else{
var cartval = parseInt(crtval) - parseInt(1);
//alert(cartval);
$(this).next('.input-quantity').append().val(cartval);
}
});
//add quantity
$('.plus-qty').click(function(){
var crtval = $(this).prev('.input-quantity').val();
var cartval = parseInt(crtval) + parseInt(1);
//alert(cartval);
$(this).prev('.input-quantity').append().val(cartval);
});
</script>