phenix Posted June 4, 2013 Report Share Posted June 4, 2013 Добрый вечер! Как изменить нижеприведенный код, чтобы он работал и для выбора способа доставки посредством select? Спасибо! Это решение, которое предложил Romalibert для обновления итоговой суммы в корзине после выбора способа доставкиhttp://forum.simplacms.ru/topic/4361-itogovaya-cena-s-uchetom-dostavki-na-stranice-korzini/page-3: Найти в cart.tpl строчку <span id="subtotal_price">{$cart->total_price}</span> {$currency->sign}И заменить её на: <span id="sub_price" style="display: none;">{$cart->total_price}</span> <span id="subtotal_price"></span> {$currency->sign}в тэг <input type="radio" name="delivery_id" ...>вставить onclick="select_delivery_method({$delivery->id});"должно выйти примерно так: <input type="radio" name="delivery_id" onclick="select_delivery_method({$delivery->id});" value="{$delivery->id}" {if $delivery_id==$delivery->id}checked{elseif $delivery@first}checked{/if} id="deliveries_{$delivery->id}">заменить ({$delivery->price|convert} {$currency->sign})на (<span id="delivery_price_{$delivery->id}">{$delivery->price}</span> {$currency->sign})после выбора способа доставки вставить с cart.tpl следующий скрипт <script> function select_delivery_method(method_id) { radiobuttons = document.getElementsByName('delivery_id'); for(var i=0;i<radiobuttons.length;i++) { if(radiobuttons[i].value == method_id) { radiobuttons[i].checked = 1; } } var subtotal = parseFloat(document.getElementById('sub_price').innerHTML); var delivery = 0; if(document.getElementById('delivery_price_'+method_id)) delivery = parseFloat(document.getElementById('delivery_price_'+method_id).innerHTML); total = subtotal+delivery; document.getElementById('subtotal_price').innerHTML = total; } </script> <script> select_delivery_method(1); </script> Quote Link to post Share on other sites
phenix Posted June 10, 2013 Author Report Share Posted June 10, 2013 Помогите за монетку) Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.