daramal Опубликовано 4 июня, 2016 Жалоба Поделиться Опубликовано 4 июня, 2016 Друзья, приветствую! Такая задачка возникла. В Админке, там где Заказы. Заходим например в какой-нибудь заказ и мы видим, что есть возможность редактировать все параметры заказа в самой админке, включая и добавление товаров к заказу. Меня сейчас интересует только один момент. При добавление дополнительного нужного товара из каталога товар добавляется, но перерасчет Итоговой цены не происходит, пока не нажмем кнопку "Сохранить". Так вот, как можно сделать, не знаю аяйксовой версии или же хотя бы как в Корзине, когда меняем количество товара, страница обновляется и происходит обновление итоговой цены? Спасибо большое за любую информацию! Цитата Ссылка на сообщение Поделиться на другие сайты
Kors Опубликовано 4 июня, 2016 Жалоба Поделиться Опубликовано 4 июня, 2016 В обычной корзине перезагрузка при изменении количества задается в строке<select name="amounts[{$purchase->variant->id}]" onchange="document.cart.submit();"> Видимо, надо пробовать аналогично сделать в админке... Цитата Ссылка на сообщение Поделиться на другие сайты
daramal Опубликовано 4 июня, 2016 Автор Жалоба Поделиться Опубликовано 4 июня, 2016 в файле order.tpl есть код отвечающий за это событие, вот только как туда вставить этот фокус ?)// Добавление товара var new_purchase = $('.purchases #new_purchase').clone(true); $('.purchases #new_purchase').remove().removeAttr('id'); $("input#add_purchase").autocomplete({ serviceUrl:'ajax/add_order_product.php', minChars:0, noCache: false, onSelect: function(suggestion){ new_item = new_purchase.clone().appendTo('.purchases'); new_item.removeAttr('id'); new_item.find('a.purchase_name').html(suggestion.data.name); new_item.find('a.purchase_name').attr('href', 'index.php?module=ProductAdmin&id='+suggestion.data.id); // Добавляем варианты нового товара var variants_select = new_item.find('select[name*=purchases][name*=variant_id]'); for(var i in suggestion.data.variants) { sku = suggestion.data.variants[i].sku == ''?'':' (арт. '+suggestion.data.variants[i].sku+')'; variants_select.append("<option value='"+suggestion.data.variants[i].id+"' price='"+suggestion.data.variants[i].price+"' amount='"+suggestion.data.variants[i].stock+"'>"+suggestion.data.variants[i].name+sku+"</option>"); } if(suggestion.data.variants.length>1 || suggestion.data.variants[0].name != '') variants_select.show(); variants_select.bind('change', function(){change_variant(variants_select);}); change_variant(variants_select); if(suggestion.data.image) new_item.find('img.product_icon').attr("src", suggestion.data.image); else new_item.find('img.product_icon').remove(); $("input#add_purchase").val('').focus().blur(); new_item.show(); }, formatResult: function(suggestion, currentValue){ var reEscape = new RegExp('(\\' + ['/', '.', '*', '+', '?', '|', '(', ')', '[', ']', '{', '}', '\\'].join('|\\') + ')', 'g'); var pattern = '(' + currentValue.replace(reEscape, '\\$1') + ')'; return (suggestion.data.image?"<img align=absmiddle src='"+suggestion.data.image+"'> ":'') + suggestion.value.replace(new RegExp(pattern, 'gi'), '<strong>$1<\/strong>'); } });Вот знатоки Java уж точно знают ) Подскажите плииз! Цитата Ссылка на сообщение Поделиться на другие сайты
daramal Опубликовано 6 июня, 2016 Автор Жалоба Поделиться Опубликовано 6 июня, 2016 Друзья, а как добавить price продукта рядом с названием товара в выпадающим списке при добавление товара?Насколько понимаю это в файле ajax/add_order_product.php Помогите пожалуйста. Цитата Ссылка на сообщение Поделиться на другие сайты
Kors Опубликовано 6 июня, 2016 Жалоба Поделиться Опубликовано 6 июня, 2016 Вообще говоря, никак. Потому как у товара цены нет.Если хотите добавить цену, скажем, первого варианта, то используйте что-то типа$product->variants[0]->price Цитата Ссылка на сообщение Поделиться на другие сайты
daramal Опубликовано 6 июня, 2016 Автор Жалоба Поделиться Опубликовано 6 июня, 2016 а какой именно код отвечает за вывод? тот что в ajax/add_order_product.php или же в order ? Я в java совсем ноль. и куда можно вставить $product->variants[0]->price ? Цитата Ссылка на сообщение Поделиться на другие сайты
mishanya Опубликовано 6 июня, 2016 Жалоба Поделиться Опубликовано 6 июня, 2016 (изменено) а какой именно код отвечает за вывод? тот что в ajax/add_order_product.php или же в order ?Я в java совсем ноль. и куда можно вставить $product->variants[0]->price ? где вы джаву тут видели? на будущее это php обработчик. а то что вы называете java видимо javascript вам нужно заменить в add_order_product.php заменить $suggestion->value = $product->name; заменить на что-то такое $suggestion->value = $product->name.' - '.$product->variants[0]->price; Изменено 6 июня, 2016 пользователем mishanya Цитата Ссылка на сообщение Поделиться на другие сайты
daramal Опубликовано 6 июня, 2016 Автор Жалоба Поделиться Опубликовано 6 июня, 2016 (изменено) где вы джаву тут видели? вам нужно заменить в add_order_product.php заменить $suggestion->value = $product->name; заменить на что-то такое $suggestion->value = $product->name.' - '.$product->variants[0]->price; mishanya, ты как всегда на Высоте! Спасибо огромное, так показывает цену. Не подскажешь, как сделать автообновление цены или же после добавление товара сразу плюсанулся итог? Уж больно нужна эта штука. Изменено 6 июня, 2016 пользователем DarAmal Цитата Ссылка на сообщение Поделиться на другие сайты
mishanya Опубликовано 6 июня, 2016 Жалоба Поделиться Опубликовано 6 июня, 2016 mishanya, ты как всегда на Высоте!Спасибо огромное, так показывает цену. Не подскажешь, как сделать автообновление цены или же после добавление товара сразу плюсанулся итог? Уж больно нужна эта штука. надо делать аяксом как в корзине, но не так просто, либо при каждом добавлении отправлять форму и страницу перегружать. либо через js пересчитывать каждый раз при событии выбора товара. но в последнем случае в конце все ровно надо будет сохранять Цитата Ссылка на сообщение Поделиться на другие сайты
daramal Опубликовано 6 июня, 2016 Автор Жалоба Поделиться Опубликовано 6 июня, 2016 надо делать аяксом как в корзине, но не так просто, либо при каждом добавлении отправлять форму и страницу перегружать. либо через js пересчитывать каждый раз при событии выбора товара. но в последнем случае в конце все ровно надо будет сохранятьда мне хоть второй вариант, если первый сложнее Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.