bibigontv Опубликовано 9 июня, 2013 Жалоба Поделиться Опубликовано 9 июня, 2013 Добавление в корзину связанного товара здравствуйте. вопрос: в чём тут ошибка? не хотят связанные товары в корзину добавляться!! учитывая то, что всё отображается в режиме селект, а не инпут, как было раньше. вод код страницы product..tpl {* Страница товара *} <!-- Хлебные крошки /--> <div id="path"> <a href="./">Главная</a> {foreach from=$category->path item=cat} ? <a href="catalog/{$cat->url}">{$cat->name|escape}</a> {/foreach} {if $brand} ? <a href="catalog/{$cat->url}/{$brand->url}">{$brand->name|escape}</a> {/if} ? {$product->name|escape} </div> <!-- Хлебные крошки #End /--> <h1 class="headname" data-product="{$product->id}">{$product->name|escape}</h1> <div class="line"></div> <table class="product" style="width:100%;"><tr> <td valign="top" style="width:265px; text-align:center;"> <!-- Большое фото --> {if $product->image} <div class="image" id="tovar"> <a href="{$product->image->filename|resize:800:600:w}" class="zoom" data-rel="group"><img src="{$product->image->filename|resize:250:250}" alt="{$product->product->name|escape}" /></a> </div> {/if} <!-- Большое фото (The End)--> <div style="margin-top:10px;"> {if $product->variants|count > 0} <!-- Выбор варианта товара --> <form class="variants" action="/cart"> <select class="variant" name="variant" {if $product->variants|count<2}style="display:none;"{/if}> {if $product->variants|count>1} <option value="Выберите вариант" disabled selected>Выберите вариант</option> {foreach $product->variants as $v} <option id="discounted_{$v->id}" name="variant" value="{$v->id}">{$v->name}</option> {/foreach} {/if} {if $product->variants|count<2} {foreach $product->variants as $v} <option id="discounted_{$v->id}" name="variant" value="{$v->id}">{$v->name}</option> {/foreach} {/if} </select> <div style="clear:both;"></div> <table style="width:100%;"> <tr> <td style="width:120px;"> <input type="submit" class="buttonbuy" value="в корзину" data-result-text="Добавлено"/> </td> <td style="text-align:center;"> {if $v->compare_price > 0}<span class="compare_price">{$v->compare_price|convert}</span>{/if} <span class="price">{$v->price|convert} <span class="currency">{$currency->sign|escape}</span></span> </td> </tr> </table> </form> <!-- Выбор варианта товара (The End) --> </div> </td> <!-- Описание товара --> <td valign="top"> <table {if $v->name}class="artvar"{/if} style="font-size:13px; font-family:Verdana"> {if $v->name}<tr><td style="width:190px;"><strong>Артикул</strong></td><td><strong>Вариант</strong></td></tr>{/if} {foreach $product->variants as $v} <tr> <td>{if $v->name}{else}<strong>Артикул:</strong> {/if}{$v->sku}</td> {if $v->name}<td>{$v->name}</td>{/if} </tr> {/foreach} </table> <div style="font-size:13px; font-family:Verdana; padding-bottom:5px; padding-top:10px;"><span style="font-weight:bold;">Коллекция:</span> <a style="color:#000000" href="/collection/{$brand->url|escape}">{$brand->name|escape}</a></div> <div style="font-size:13px; font-family:Verdana; padding-bottom:8px;"><span style="font-weight:bold;">Производитель:</span> AM.PM</div> <div class="description"> {$product->body} </div> {if $product->features} <!-- Характеристики товара --> <h2 style="font-family:Verdana; font-size:13px;">Технические характеристики</h2> <table class="features"> {foreach $product->features as $f} <tr> <td style="width:150px;" class="bordteh" id="left"><span>{$f->name}</span></td> <td class="bordteh" id="right"><span>{$f->value}</span></td> </tr> {/foreach} </table> <!-- Характеристики товара (The End)--> {/if} </td> </tr> </table> <div class="line"></div> {else} Нет в наличии {/if} <!-- Описание товара (The End)--> <!-- Дополнительные фото продукта --> {if $product->images|count>1} <div class="images" style="text-align:center;"> {* cut удаляет первую фотографию, если нужно начать 2-й - пишем cut:2 и тд *} {foreach $product->images|cut as $i=>$image} <a href="{$image->filename|resize:800:600:w}" class="zoom" data-rel="group"><img style="margin:5px;" src="{$image->filename|resize:200:200}" alt="{$product->name|escape}" /></a> {/foreach} </div> <div class="line"></div> {/if} <!-- Дополнительные фото продукта (The End)--> <!-- Соседние товары /--> <!--<table style="width:100%;" class="back_forward"><tr> {if $prev_product} <td style="text-align:left;color: rgb(19, 142, 214);">? <a style="color: rgb(19, 142, 214);font-family: Arial;font-size: 14px;font-weight: bold;padding-top: 5px;" class="prev_page_link" href="products/{$prev_product->url}">{$prev_product->name|escape}</a></td> {/if} {if $next_product} <td style="text-align:right;color: rgb(19, 142, 214);"><a style="color: rgb(19, 142, 214);font-family: Arial;font-size: 14px;font-weight: bold;padding-top: 5px;" class="next_page_link" href="products/{$next_product->url}">{$next_product->name|escape}</a> ?</td> {/if} </tr></table> --> <!-- Описание товара (The End)--> {if $related_products}<br/> <strong>Дополнительная комплектация</strong> <table class="product"> {foreach $related_products as $product} <tr> <td><p>{$product->name|escape}</p></td>{if $product->variants|count > 0}<form class="variants" action="/cart">{foreach $product->variants as $v}<td> <select class="variant" name="variant" {if $productd->variants|count<2}style="display:none;"{/if}> {if $product->variants|count>1} <option value="Выберите вариант" disabled selected>Выберите вариант</option> {foreach $product->variants as $v} <option id="related_{$v->id}" name="variant" value="{$v->id}">{$v->name}</option> {/foreach} {/if} {if $product->variants|count<2} {foreach $product->variants as $v} <option id="related_{$v->id}" name="variant" value="{$v->id}">{$v->name}</option> {/foreach} {/if} </select>{$v->price|convert} <span class="currency">{$currency->sign|escape}</td>{/foreach}<td><input type="submit" class="button" value="в корзину" data-result-text="добавлено"/></td></form>{/if} </tr> {/foreach} </table> {/if} {literal} <script> $(function() { // Раскраска строк характеристик $(".features li:even").addClass('even'); // Зум картинок $("a.zoom").fancybox({ 'hideOnContentClick' : true }); }); </script> {/literal} вот код файла ajax_cart.js // Аяксовая корзина $('form.variants').live('submit', function(e) { e.preventDefault(); button = $(this).find('input[type="submit"]'); if($(this).find('select[name=variant]').size()>0) variant = $(this).find('select[name=variant]').val(); if($(this).find('select[name=variant]').size()>0) variant = $(this).find('select').val(); $.ajax({ url: "ajax/cart.php", data: {variant: variant}, dataType: 'json', success: function(data){ $('#cart_informer').html(data); if(button.attr('data-result-text')) button.val(button.attr('data-result-text')); } }); var o1 = $(this).offset(); var o2 = $('#cart_informer').offset(); var dx = o1.left - o2.left; var dy = o1.top - o2.top; var distance = Math.sqrt(dx * dx + dy * dy); $(this).closest('.product').find('.image img').effect("transfer", { to: $("#cart_informer"), className: "transfer_class" }, distance); $('.transfer_class').html($(this).closest('.product').find('.image').html()); $('.transfer_class').find('img').css('height', '100%'); return false; }); /* // Аяксовая корзина $('a[href*="cart?variant"]').live('click', function(e) { e.preventDefault(); //variant_id = $(this).attr('id'); href = $(this).attr('href'); pattern = /\/?cart\?variant=(\d+)$/; variant_id = pattern.exec(href)[1]; link = $(this); $.ajax({ url: "ajax/cart.php", data: {variant: variant_id}, dataType: 'json', success: function(data){ $('#cart_informer').html(data); //if(link.attr('added_text')) // link.html(link.attr('added_text')); //link.attr('href', '/cart'); } }); var o1 = $(this).offset(); var o2 = $('#cart_informer').offset(); var dx = o1.left - o2.left; var dy = o1.top - o2.top; var distance = Math.sqrt(dx * dx + dy * dy); $(this).closest('.product').find('.image img').effect("transfer", { to: $("#cart_informer"), className: "transfer_class" }, distance); $('.transfer_class').html($(this).closest('.product').find('.image').html()); $('.transfer_class').find('img').css('height', '100%'); return false; }); */ Цитата Ссылка на сообщение Поделиться на другие сайты
disfated Опубликовано 9 июня, 2013 Жалоба Поделиться Опубликовано 9 июня, 2013 А Вы отладку кода в браузере откройте и сами посмотрите. Это в разы быстрее, чем создавать темы, да ёщё и с простынёй кода. Ну правда Цитата Ссылка на сообщение Поделиться на другие сайты
alaster Опубликовано 9 июня, 2013 Жалоба Поделиться Опубликовано 9 июня, 2013 Тоже сломал глаза. В мозилле есть отличные инструменты для отладки (на крайний случай). p/s Мниться, что проблема в том, что параметр variant так и не был передан в cart.php Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.