Опции Popup (карточка товара)

WKTP

Постоялец
Регистрация
5 Сен 2013
Сообщения
53
Реакции
7
День добрый!

При покупке товара с обязательными опциями(radio) некоторые клиенты "тупят" и не видят/не понимают что надо выбрать ту или иную опцию.

Вот, собственно хочу сделать при нажатии кнопки купить всплывало окно с опциями и кнопкой купить, что б наверняка!)

Если опция(и) выбраны, на странице, то кнопка Купить работает в обычном режиме.
Если опция(и) не выбраны, на странице, то кнопка Купить вызывает всплывающее окно с теми же опциями и кнопкой Купить. После выбора опций и нажатии кнопки Купить, окно закрывается.
Если опций нет, то кнопка Купить в обычном режиме!

Само всплывающее окно с опциями я сделал, но оно "конфликтует" с опциями на самой страничке. Работает что-то одно, на большее знаний не хватает!

На просторах интернета ничего не нашел, на оф. сайте ничего нет подходящего!

Opencart 2.3.0.2, оригинальный, без модификаций и прочего!
 

Stealth421

Профессор
Регистрация
11 Янв 2014
Сообщения
163
Реакции
47
в дефолтном шаблоне в районе 434 строки после
if (json['error']['option']) {
делайте вызов вашего окна
 

WKTP

Постоялец
Регистрация
5 Сен 2013
Сообщения
53
Реакции
7
Вызов окна сделал
Код:
            if (json['error']) {
                if (json['error']['option']) {
                $.fancybox('#modal'); // вызов окна
                    for (i in json['error']['option']) {
                        var element = $('#input-option' + i.replace('_', '-'));
                        if (element.parent().hasClass('input-group')) {
                            element.parent().after('<div class="text-danger">' + json['error']['option'][i] + '</div>');
                        } else {
                            element.after('<div class="text-danger">' + json['error']['option'][i] + '</div>');
                        }
                    }
                }
           
                if (json['error']['recurring']) {
                    $('select[name=\'recurring_id\']').after('<div class="text-danger">' + json['error']['recurring'] + '</div>');
                }
           
                // Highlight any found errors
                $('.text-danger').parent().addClass('has-error');
            }
Код с опциями и кнопкой(скопировал) поместил в <div id="modal" style="display:none;">код с опциями</div>.
Окно появляется если не выбраны опции, выбираю опции, кнопка Купить не срабатывает! Ничего не происходит...

Еще пробовал так, создал 2 кода с опциями <div id="contentp">опции на страничке</div> и <div id="modal" style="display:none;">опции в popup окне</div>
После if (json['error']['option']) { добавил $('#contentp').remove();, тоже не работает!
 
Последнее редактирование:

WKTP

Постоялец
Регистрация
5 Сен 2013
Сообщения
53
Реакции
7
Сделал, все оказалось намного проще чем я думал.
Всплывающее окно я сделал на чистом css, без colorbox, fancybox и т.п., вызов окна после if (json['error']['option']) {, соот. закрытие там же после if (json['success']) {

Stealth421 спасибо!)
 

MIhail_dOCJERS

Создатель
Регистрация
14 Авг 2017
Сообщения
28
Реакции
5
Привет всем подскажите как сделать так, что бы произвольные опции типа текст в опенкарте влияли на цену???
Что бы при вводе значения выше менялась цена???
 

TryCatch

Гуру форума
Регистрация
19 Авг 2016
Сообщения
181
Реакции
79
Привет всем подскажите как сделать так, что бы произвольные опции типа текст в опенкарте влияли на цену???
Что бы при вводе значения выше менялась цена???
При изменении в текстовом поле вроде не видел. radio, select, checkbox, images есть такой модуль. количество в опциях есть. Что вводить то нужно?
 
Сверху