gpt4 book ai didi

javascript - Opencart 为 opencart 添加产品选项

转载 作者:行者123 更新时间:2023-11-28 01:13:34 27 4
gpt4 key购买 nike

除产品选项外,我的购物车似乎正常运行。当我单击“添加购物车”按钮时,会添加该项目,但不会添加任何选项。我真的不明白为什么会发生这种情况,因为我已经按照函数的需要,使用 option_idoption_value_id

将选项作为数组提交了

单击按钮时调用 JavaScript

$('#button-cart').on('click', function() {
var model_select = $('#model option:selected').val();

alert("working");
$.ajax({
url: '<?php echo $action?>',
type: 'post',
data: {'option' : $('#network option:selected').val(),'product_id': model_select, 'ajax':'1'},
success: function(json) {
$('.success, .warning, .attention, information, .error').remove();

if (json['error']) {
if (json['error']['option']) {
for (i in json['error']['option']) {
$('#option-' + i).after('<span class="error">' + json['error']['option'][i] + '</span>');
}
}
}

if (json['success']) {
$('#notification').html('<div class="success" style="display: none;">' + json['success'] + '<img src="catalog/view/theme/default/image/close.png" alt="" class="close" /></div>');

$('.success').fadeIn('slow');

$('#cart-total').html(json['total']);

$('html, body').animate({ scrollTop: 0 }, 'slow');
}
}
});
});

PHP

if (isset($_REQUEST['product_id']) && isset($_REQUEST['option'])) {
$product_id = $_REQUEST['product_id'];
$option=array("13" => (int)$_REQUEST['option']);
var_dump($option);
$this->cart->add($product_id,$quantity=1,$option);
print_r($this->session->data['cart']);

}

这是选项数组的var_dump

array(1) { [13]=> int(60) }

最佳答案

第一个选项($key=>value),您已传递$key => 13,这应该是有效的 key

位于Option($key=>$Value)数组中,其中$key代表product_option_id$value 代表 product_option_value 表的 Product_option_value_id,因此这些应该是有效的,当您将选项分配给产品而不是静态 id 时动态分配。

**第二** 只需使用opencart的默认方法,这也可以处理其他输入类型

$('#button-cart').bind('click', function() {
$.ajax({
url: 'index.php?route=checkout/cart/add',
type: 'post',
data: $('.product-info input[type=\'text\'], .product-info input[type=\'hidden\'], .product-info input[type=\'radio\']:checked, .product-info input[type=\'checkbox\']:checked, .product-info select, .product-info textarea'),
dataType: 'json',
success: function(json) {
$('.success, .warning, .attention, information, .error').remove();

if (json['error']) {
if (json['error']['option']) {
for (i in json['error']['option']) {
$('#option-' + i).after('<span class="error">' + json['error']['option'][i] + '</span>');
}
}

if (json['error']['profile']) {
$('select[name="profile_id"]').after('<span class="error">' + json['error']['profile'] + '</span>');
}
}

if (json['success']) {
$('#notification').html('<div class="success" style="display: none;">' + json['success'] + '<img src="catalog/view/theme/default/image/close.png" alt="" class="close" /></div>');

$('.success').fadeIn('slow');

$('#cart-total').html(json['total']);

$('html, body').animate({ scrollTop: 0 }, 'slow');
}
}
});
});

关于javascript - Opencart 为 opencart 添加产品选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24138334/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com