JS 递增数量 2 乘 2 而不是 1 乘 1
JS incrementing quantity 2 by 2 instead of 1 by 1
我正在创建一个 shopify 主题,但是当我将这个脚本添加到 carti 时出现了一个错误。当您尝试在购物车中增加产品时,它们会跳 2 跳 2。
HTML
<div class="quantity">
<input type="number" name="updates[]" value="{{ item.quantity }}" data-id="{{ item.id }}" min="0" max="99" step="1" title="Qty" class="qty" size="4">
</div>
JS
if ((".quantity").length > 0) {
var form_cart = $("form .quantity");
form_cart.prepend('<span class="minus"><i class="fa fa-minus-square-o"></i></span>');
form_cart.append('<span class="plus"><i class="fa fa-plus-square-o"></i></span>');
var minus = form_cart.find($(".minus"));
var plus = form_cart.find($(".plus"));
minus.on("click", function(){
var qty = $(this).parent().find(".qty");
if (qty.val() <= 1) {
qty.val(1);
} else {
qty.val((parseInt(qty.val())-1));
}
});
plus.on("click", function(){
var qty = $(this).parent().find(".qty");
qty.val((parseInt(qty.val())+1));
});
}
ps。最小值和最大值不工作
抱歉英语不好
我认为您实际上不需要 JS 来使这种输入类型工作,因此在 JS 中添加或删除值就像 double-adding 或 double-removing 值一样 ;)
希望对您有所帮助!
更改 var qty = $(this).parent().find(".qty");对于外部 if 和 works tks for all
if ((".quantity").length > 0) {
var form_cart = $("form .quantity");
form_cart.prepend('');
form_cart.append('');
var minus = form_cart.find($(".minus"));
var plus = form_cart.find($(".plus"));
var qty = $(this).parent().find(".qty");
minus.on("click", function(){
if (qty.val() <= 1) {
qty.val(1);
} else {
qty.val((parseInt(qty.val())-1));
}
});
plus.on("click", function(){
qty.val((parseInt(qty.val())+1));
});
};
我正在创建一个 shopify 主题,但是当我将这个脚本添加到 carti 时出现了一个错误。当您尝试在购物车中增加产品时,它们会跳 2 跳 2。
HTML
<div class="quantity">
<input type="number" name="updates[]" value="{{ item.quantity }}" data-id="{{ item.id }}" min="0" max="99" step="1" title="Qty" class="qty" size="4">
</div>
JS
if ((".quantity").length > 0) {
var form_cart = $("form .quantity");
form_cart.prepend('<span class="minus"><i class="fa fa-minus-square-o"></i></span>');
form_cart.append('<span class="plus"><i class="fa fa-plus-square-o"></i></span>');
var minus = form_cart.find($(".minus"));
var plus = form_cart.find($(".plus"));
minus.on("click", function(){
var qty = $(this).parent().find(".qty");
if (qty.val() <= 1) {
qty.val(1);
} else {
qty.val((parseInt(qty.val())-1));
}
});
plus.on("click", function(){
var qty = $(this).parent().find(".qty");
qty.val((parseInt(qty.val())+1));
});
}
ps。最小值和最大值不工作
抱歉英语不好
我认为您实际上不需要 JS 来使这种输入类型工作,因此在 JS 中添加或删除值就像 double-adding 或 double-removing 值一样 ;)
希望对您有所帮助!
更改 var qty = $(this).parent().find(".qty");对于外部 if 和 works tks for all
if ((".quantity").length > 0) { var form_cart = $("form .quantity"); form_cart.prepend(''); form_cart.append('');
var minus = form_cart.find($(".minus"));
var plus = form_cart.find($(".plus"));
var qty = $(this).parent().find(".qty");
minus.on("click", function(){
if (qty.val() <= 1) {
qty.val(1);
} else {
qty.val((parseInt(qty.val())-1));
}
});
plus.on("click", function(){
qty.val((parseInt(qty.val())+1));
});
};