OC (아래 첨부 된 이미지)의 제품 페이지를 사용자 정의하고 있지만 모양이 좋았지 만 장바구니의 ajax가 작동하지 않아 제품을 장바구니에 추가 할 수 없습니다. "옵션"이 선택되지 않은 일반 오류입니다.Opencart의 Ajax가 작동하지 않습니다.
코드 : 위의 대한
<div class="widget">
<?php foreach ($options as $option) { ?>
<?php if ($option['type'] == 'radio') { ?>
<div id="option-<?php echo $option['product_option_id']; ?>" class="option">
<div class="title">
<h2><?php echo $option['name']; ?>:</h2>
</div>
<table >
<?php foreach ($option['option_value'] as $option_value) { ?>
<tr>
<td>
<label>
<input type="radio" name="option[<?php echo $option['option_id']; ?>]" value="<?php echo $option_value['option_value_id']; ?>" />
<span style="width:40%;"><?php echo $option_value['name']; ?></span>
<?php if($option_value['quantity'] == 0) { ?>
<span style="width:20%;">Out of stock</span>
<?php } else { ?>
<span style="width:20%;"><?php echo $option_value['quantity']; ?> remaining</span>
<?php } ?>
<?php if ($option_value['price']) { ?>
<span style="width:10%;"><?php echo $option_value['prefix']; ?> <?php echo $option_value['price']; ?></span>
<?php } else { ?>
<span style="width:10%;"><?php echo $option_value['prefix']; ?> <?php echo $special; ?></span>
<?php } ?>
</label>
</td>
</tr>
<?php } ?>
</table>
</div>
<?php } ?>
<?php } ?>
<div class="cart">
<?php echo $text_qty; ?>
<input type="text" name="quantity" size="2" value="<?php echo $minimum; ?>" />
<input type="hidden" name="product_id" size="2" value="<?php echo $product_id; ?>" />
<input type="button" value="<?php echo $button_cart; ?>" id="button-cart" class="button" />
<?php if ($minimum > 1) { ?>
<div class="minimum">
<?php echo $text_minimum; ?>
</div>
<?php } ?>
</div>
아약스 코드는 다음과 같습니다
<script type="text/javascript"><!--
$('#notification').hide();
$('#button-cart').bind('click', function() {
$.ajax({
url: 'index.php?route=checkout/cart/add',
type: 'post',
data: $('input[type=\'text\'], input[type=\'hidden\'], input[type=radio]:checked'),
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['success']) {
$('#notification').show();
$('#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');
}
}
});
});
//--></script>
이미지 :
https://dl.dropboxusercontent.com/u/26243182/oc-options.png
나는 FOL을 실행하는 경우 라디오 버튼의 내용을 알려주는 jQuery 스크립트가 있습니다.
$('input[type="radio"]').click(function(){
if ($(this).is(':checked'))
{
alert($(this).val());
}
});
아마 간단한 죽은 뭔가를 놓친 거지하지만 정신 날 운전 있어요 :)
어떤 도움에 감사드립니다
콘솔에서 ajax 응답을 확인 했습니까? –
Firebug 콘솔의 아무 것도 없습니다. –
누구든지 도와 드릴 수 있습니까? 그것은 단순한 무언가가 될 것이기 때문에 저를 미치게 만듭니다. 그러나 나는 그것을 해결할 수 없습니다! –