Baco Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 (змінено) Доброго времени каждому... Столкнулся с проблемой, а именно с библиотекой этого скрипта. Задача: Сделать возможность добавлять новый тип опций из категории в корзину. Дано: 1. Скрипт, приведённый выше. 2. Опции типа "mixed" (выпадающий список с рисунком) 3. Доступ ко всем данным типа: data-description="" //Сумма с префиксом и в валютном формате data-imagesrc="" //Рисунок data-price="" //Цена из базы data-prefix="" //Сам префикс data-name="" //ID опции В корзину данные же ложатся прекрасно, НО: var ddData = $('#htmlselect-' + option_id).data('ddslick'); // Тут получаем набор объектов через библиотеку if (ddData !== null && ddData !== undefined) { // проверочка... var name = ddData.selectedData.name; // option=[option_id] var value = ddData.selectedData.value; // value var data = '&' + name + '='+ value; // формирование строки для addToCart } else { var data = ''; } Вопрос: как добавить в data несколько опций одного товара через 2-ва отдельных ddslick-а ? P.S. Демо Змінено 4 липня 2014 користувачем Baco Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 data(key,value) сформировать value как объект Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 4 липня 2014 Автор Share Опубліковано: 4 липня 2014 На данный момент проблема тут: var ddData = $('#htmlselect-' + option_id).data('ddslick'); то есть в одну переменную - 2-ва набора значений добавить, или разделить по option_id, и как добавить это в data, что бы к одному товару, добавилось типа: ( [option] => Array ( [227] => 18, //option #1 [228] => 22 //option #2 ) [quantity] => 1 [product_id] => 30 ) Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 var value = {'option':{'227':'18','228':12},'quantity':1,'product_id':30} $(elem).data('ddslick',value) var ddslick = $(elem).data('ddslick') Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 4 липня 2014 Автор Share Опубліковано: 4 липня 2014 var ddData = $('#htmlselect-' + option_id).data('ddslick'); - входные данные смотреть мануал по работе скрипта, если писать по "индостайлу", то получается так: var ddData_1 = $('#htmlselect-227').data('ddslick'); // Тут получаем набор объектов через библиотеку опции по ID 227 var ddData_2 = $('#htmlselect-228').data('ddslick'); // Тут получаем набор объектов через библиотеку опции по ID 228 if (ddData_1 !== null && ddData_1 !== undefined) { // проверочка... var name_1 = ddData_1.selectedData.name; // option=[227] var value_1 = ddData_1.selectedData.value; // value 18 var data_1 = '&' + name_1 + '='+ value_1; // формирование строки для addToCart } if else (ddData_2 !== null && ddData_2 !== undefined) { var name_2 = ddData_2.selectedData.name; // option=[228] var value_2 = ddData_2.selectedData.value; // value 12 var data_2 = '&' + name_2 + '='+ value_2; // формирование строки для addToCart } else { var data_1 = ''; var data_2 = ''; } вот как бы так не говнокодить, а выбрать и "смержить" значения все в data, кстати объектами не получится послать, надо только в массиве опции высылать постом... Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 Ок... из примера Массив объектов var ddData = [ { text: "Facebook", value: 1, selected: false, description: "Description with Facebook", imageSrc: "http://dl.dropbox.com/u/40036711/Images/facebook-icon-32.png" }, { text: "Twitter", value: 2, selected: false, description: "Description with Twitter", imageSrc: "http://dl.dropbox.com/u/40036711/Images/twitter-icon-32.png" }, { text: "LinkedIn", value: 3, selected: true, description: "Description with LinkedIn", imageSrc: "http://dl.dropbox.com/u/40036711/Images/linkedin-icon-32.png" }, { text: "Foursquare", value: 4, selected: false, description: "Description with Foursquare", imageSrc: "http://dl.dropbox.com/u/40036711/Images/foursquare-icon-32.png" } ]; Если отсылать эти данные в корзину, то $.ajax({ data: .... }) смотрим data Type: PlainObject or String т.е jquery сам разберется с типами (должен разобраться) Ничего не надо говнокодить... все красиво получается... Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 Ага.. увидел демку :( Первое что бросилось в глаза var ddData = $('#htmlselect-' + option_id) при неком стечении обстоятельств) таких объектов может быть несколько) поэтому это должен быть класс Причем add_bc(product_id) { нужно немного доработать function add_bc(product_id,el) { onclick="add_bc('48',this) this и el нужны чтобы однозначно определить в каком контейнере нажали кнопку <div class="product-grid"> <div class="product-48"> тогда function add_bc(product_id,el) { var parent = $(el).closest(".product-"+product_id) ... } далее весь раскручивать от parent например parent.find("[id~=htmlselect-").each(function(){ data = $(this).data('ddslick') .... }) Как-то так.... 1 Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 5 липня 2014 Автор Share Опубліковано: 5 липня 2014 Логика хороша, уже ближе к сути, но всё равно, проблема тут: var data = '&' + name + '='+ value; 1. Данные - не массив объектов JSON, они - "вытяжка" из ddData = $('#htmlselect-' + option_id).data('ddslick'); 2. Как разбить по идентификаторам ddData, в зависимости от опции и соответственно как добавить (пусть сам уж jquery разбирается) в data значения: [option] => Array ( [227] => 18, //option #1 ..[ ddData_1.selectedData.name] => ddData_1.selectedData.value, [228] => 22 //option #2 ..[ ddData_2.selectedData.name] => ddData_2.selectedData.value; ) Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 5 липня 2014 Share Опубліковано: 5 липня 2014 ddData[0] = $('#htmlselect-228').data('ddslick') ddData[1] = $('#htmlselect-229').data('ddslick') data = '' $.each(ddData,function(index, valval){ var name = valval.selectedData.name; // option=[option_id] var value = valval.selectedData.value; // value data += '&' + name + '='+ value; }) код проверен на твоих данных data = "&option[228]=0&option[229]=0" data = "&option[228]=0&option[229]=25" 1 Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 5 липня 2014 Автор Share Опубліковано: 5 липня 2014 Почти реализовал, вернее через $.each( как раз получилось то, что задумывалось, теперь завис на первостепенном этапе - это индексе для ddData[], если автоинкремент ставлю, то обнуляет после каждого forech товара... но это несущественно, как то придумаю уж... как реализую, влеплю контрольно репу, за подсказку по jquery... P.S. Сам забуксовал... вынес начальное значение инкремента за массив и всё стало как надо... Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Разное Курилка addToCart + 2-ве опции Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
chukcha Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 data(key,value) сформировать value как объект Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 4 липня 2014 Автор Share Опубліковано: 4 липня 2014 На данный момент проблема тут: var ddData = $('#htmlselect-' + option_id).data('ddslick'); то есть в одну переменную - 2-ва набора значений добавить, или разделить по option_id, и как добавить это в data, что бы к одному товару, добавилось типа: ( [option] => Array ( [227] => 18, //option #1 [228] => 22 //option #2 ) [quantity] => 1 [product_id] => 30 ) Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 var value = {'option':{'227':'18','228':12},'quantity':1,'product_id':30} $(elem).data('ddslick',value) var ddslick = $(elem).data('ddslick') Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 4 липня 2014 Автор Share Опубліковано: 4 липня 2014 var ddData = $('#htmlselect-' + option_id).data('ddslick'); - входные данные смотреть мануал по работе скрипта, если писать по "индостайлу", то получается так: var ddData_1 = $('#htmlselect-227').data('ddslick'); // Тут получаем набор объектов через библиотеку опции по ID 227 var ddData_2 = $('#htmlselect-228').data('ddslick'); // Тут получаем набор объектов через библиотеку опции по ID 228 if (ddData_1 !== null && ddData_1 !== undefined) { // проверочка... var name_1 = ddData_1.selectedData.name; // option=[227] var value_1 = ddData_1.selectedData.value; // value 18 var data_1 = '&' + name_1 + '='+ value_1; // формирование строки для addToCart } if else (ddData_2 !== null && ddData_2 !== undefined) { var name_2 = ddData_2.selectedData.name; // option=[228] var value_2 = ddData_2.selectedData.value; // value 12 var data_2 = '&' + name_2 + '='+ value_2; // формирование строки для addToCart } else { var data_1 = ''; var data_2 = ''; } вот как бы так не говнокодить, а выбрать и "смержить" значения все в data, кстати объектами не получится послать, надо только в массиве опции высылать постом... Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 Ок... из примера Массив объектов var ddData = [ { text: "Facebook", value: 1, selected: false, description: "Description with Facebook", imageSrc: "http://dl.dropbox.com/u/40036711/Images/facebook-icon-32.png" }, { text: "Twitter", value: 2, selected: false, description: "Description with Twitter", imageSrc: "http://dl.dropbox.com/u/40036711/Images/twitter-icon-32.png" }, { text: "LinkedIn", value: 3, selected: true, description: "Description with LinkedIn", imageSrc: "http://dl.dropbox.com/u/40036711/Images/linkedin-icon-32.png" }, { text: "Foursquare", value: 4, selected: false, description: "Description with Foursquare", imageSrc: "http://dl.dropbox.com/u/40036711/Images/foursquare-icon-32.png" } ]; Если отсылать эти данные в корзину, то $.ajax({ data: .... }) смотрим data Type: PlainObject or String т.е jquery сам разберется с типами (должен разобраться) Ничего не надо говнокодить... все красиво получается... Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 Ага.. увидел демку :( Первое что бросилось в глаза var ddData = $('#htmlselect-' + option_id) при неком стечении обстоятельств) таких объектов может быть несколько) поэтому это должен быть класс Причем add_bc(product_id) { нужно немного доработать function add_bc(product_id,el) { onclick="add_bc('48',this) this и el нужны чтобы однозначно определить в каком контейнере нажали кнопку <div class="product-grid"> <div class="product-48"> тогда function add_bc(product_id,el) { var parent = $(el).closest(".product-"+product_id) ... } далее весь раскручивать от parent например parent.find("[id~=htmlselect-").each(function(){ data = $(this).data('ddslick') .... }) Как-то так.... 1 Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 5 липня 2014 Автор Share Опубліковано: 5 липня 2014 Логика хороша, уже ближе к сути, но всё равно, проблема тут: var data = '&' + name + '='+ value; 1. Данные - не массив объектов JSON, они - "вытяжка" из ddData = $('#htmlselect-' + option_id).data('ddslick'); 2. Как разбить по идентификаторам ddData, в зависимости от опции и соответственно как добавить (пусть сам уж jquery разбирается) в data значения: [option] => Array ( [227] => 18, //option #1 ..[ ddData_1.selectedData.name] => ddData_1.selectedData.value, [228] => 22 //option #2 ..[ ddData_2.selectedData.name] => ddData_2.selectedData.value; ) Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 5 липня 2014 Share Опубліковано: 5 липня 2014 ddData[0] = $('#htmlselect-228').data('ddslick') ddData[1] = $('#htmlselect-229').data('ddslick') data = '' $.each(ddData,function(index, valval){ var name = valval.selectedData.name; // option=[option_id] var value = valval.selectedData.value; // value data += '&' + name + '='+ value; }) код проверен на твоих данных data = "&option[228]=0&option[229]=0" data = "&option[228]=0&option[229]=25" 1 Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 5 липня 2014 Автор Share Опубліковано: 5 липня 2014 Почти реализовал, вернее через $.each( как раз получилось то, что задумывалось, теперь завис на первостепенном этапе - это индексе для ddData[], если автоинкремент ставлю, то обнуляет после каждого forech товара... но это несущественно, как то придумаю уж... как реализую, влеплю контрольно репу, за подсказку по jquery... P.S. Сам забуксовал... вынес начальное значение инкремента за массив и всё стало как надо... Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Разное Курилка addToCart + 2-ве опции Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Baco Опубліковано: 4 липня 2014 Автор Share Опубліковано: 4 липня 2014 На данный момент проблема тут: var ddData = $('#htmlselect-' + option_id).data('ddslick'); то есть в одну переменную - 2-ва набора значений добавить, или разделить по option_id, и как добавить это в data, что бы к одному товару, добавилось типа: ( [option] => Array ( [227] => 18, //option #1 [228] => 22 //option #2 ) [quantity] => 1 [product_id] => 30 ) Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 var value = {'option':{'227':'18','228':12},'quantity':1,'product_id':30} $(elem).data('ddslick',value) var ddslick = $(elem).data('ddslick') Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 4 липня 2014 Автор Share Опубліковано: 4 липня 2014 var ddData = $('#htmlselect-' + option_id).data('ddslick'); - входные данные смотреть мануал по работе скрипта, если писать по "индостайлу", то получается так: var ddData_1 = $('#htmlselect-227').data('ddslick'); // Тут получаем набор объектов через библиотеку опции по ID 227 var ddData_2 = $('#htmlselect-228').data('ddslick'); // Тут получаем набор объектов через библиотеку опции по ID 228 if (ddData_1 !== null && ddData_1 !== undefined) { // проверочка... var name_1 = ddData_1.selectedData.name; // option=[227] var value_1 = ddData_1.selectedData.value; // value 18 var data_1 = '&' + name_1 + '='+ value_1; // формирование строки для addToCart } if else (ddData_2 !== null && ddData_2 !== undefined) { var name_2 = ddData_2.selectedData.name; // option=[228] var value_2 = ddData_2.selectedData.value; // value 12 var data_2 = '&' + name_2 + '='+ value_2; // формирование строки для addToCart } else { var data_1 = ''; var data_2 = ''; } вот как бы так не говнокодить, а выбрать и "смержить" значения все в data, кстати объектами не получится послать, надо только в массиве опции высылать постом... Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 Ок... из примера Массив объектов var ddData = [ { text: "Facebook", value: 1, selected: false, description: "Description with Facebook", imageSrc: "http://dl.dropbox.com/u/40036711/Images/facebook-icon-32.png" }, { text: "Twitter", value: 2, selected: false, description: "Description with Twitter", imageSrc: "http://dl.dropbox.com/u/40036711/Images/twitter-icon-32.png" }, { text: "LinkedIn", value: 3, selected: true, description: "Description with LinkedIn", imageSrc: "http://dl.dropbox.com/u/40036711/Images/linkedin-icon-32.png" }, { text: "Foursquare", value: 4, selected: false, description: "Description with Foursquare", imageSrc: "http://dl.dropbox.com/u/40036711/Images/foursquare-icon-32.png" } ]; Если отсылать эти данные в корзину, то $.ajax({ data: .... }) смотрим data Type: PlainObject or String т.е jquery сам разберется с типами (должен разобраться) Ничего не надо говнокодить... все красиво получается... Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 Ага.. увидел демку :( Первое что бросилось в глаза var ddData = $('#htmlselect-' + option_id) при неком стечении обстоятельств) таких объектов может быть несколько) поэтому это должен быть класс Причем add_bc(product_id) { нужно немного доработать function add_bc(product_id,el) { onclick="add_bc('48',this) this и el нужны чтобы однозначно определить в каком контейнере нажали кнопку <div class="product-grid"> <div class="product-48"> тогда function add_bc(product_id,el) { var parent = $(el).closest(".product-"+product_id) ... } далее весь раскручивать от parent например parent.find("[id~=htmlselect-").each(function(){ data = $(this).data('ddslick') .... }) Как-то так.... 1 Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 5 липня 2014 Автор Share Опубліковано: 5 липня 2014 Логика хороша, уже ближе к сути, но всё равно, проблема тут: var data = '&' + name + '='+ value; 1. Данные - не массив объектов JSON, они - "вытяжка" из ddData = $('#htmlselect-' + option_id).data('ddslick'); 2. Как разбить по идентификаторам ddData, в зависимости от опции и соответственно как добавить (пусть сам уж jquery разбирается) в data значения: [option] => Array ( [227] => 18, //option #1 ..[ ddData_1.selectedData.name] => ddData_1.selectedData.value, [228] => 22 //option #2 ..[ ddData_2.selectedData.name] => ddData_2.selectedData.value; ) Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 5 липня 2014 Share Опубліковано: 5 липня 2014 ddData[0] = $('#htmlselect-228').data('ddslick') ddData[1] = $('#htmlselect-229').data('ddslick') data = '' $.each(ddData,function(index, valval){ var name = valval.selectedData.name; // option=[option_id] var value = valval.selectedData.value; // value data += '&' + name + '='+ value; }) код проверен на твоих данных data = "&option[228]=0&option[229]=0" data = "&option[228]=0&option[229]=25" 1 Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 5 липня 2014 Автор Share Опубліковано: 5 липня 2014 Почти реализовал, вернее через $.each( как раз получилось то, что задумывалось, теперь завис на первостепенном этапе - это индексе для ddData[], если автоинкремент ставлю, то обнуляет после каждого forech товара... но это несущественно, как то придумаю уж... как реализую, влеплю контрольно репу, за подсказку по jquery... P.S. Сам забуксовал... вынес начальное значение инкремента за массив и всё стало как надо... Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Разное Курилка addToCart + 2-ве опции Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
chukcha Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 var value = {'option':{'227':'18','228':12},'quantity':1,'product_id':30} $(elem).data('ddslick',value) var ddslick = $(elem).data('ddslick') Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 4 липня 2014 Автор Share Опубліковано: 4 липня 2014 var ddData = $('#htmlselect-' + option_id).data('ddslick'); - входные данные смотреть мануал по работе скрипта, если писать по "индостайлу", то получается так: var ddData_1 = $('#htmlselect-227').data('ddslick'); // Тут получаем набор объектов через библиотеку опции по ID 227 var ddData_2 = $('#htmlselect-228').data('ddslick'); // Тут получаем набор объектов через библиотеку опции по ID 228 if (ddData_1 !== null && ddData_1 !== undefined) { // проверочка... var name_1 = ddData_1.selectedData.name; // option=[227] var value_1 = ddData_1.selectedData.value; // value 18 var data_1 = '&' + name_1 + '='+ value_1; // формирование строки для addToCart } if else (ddData_2 !== null && ddData_2 !== undefined) { var name_2 = ddData_2.selectedData.name; // option=[228] var value_2 = ddData_2.selectedData.value; // value 12 var data_2 = '&' + name_2 + '='+ value_2; // формирование строки для addToCart } else { var data_1 = ''; var data_2 = ''; } вот как бы так не говнокодить, а выбрать и "смержить" значения все в data, кстати объектами не получится послать, надо только в массиве опции высылать постом... Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 Ок... из примера Массив объектов var ddData = [ { text: "Facebook", value: 1, selected: false, description: "Description with Facebook", imageSrc: "http://dl.dropbox.com/u/40036711/Images/facebook-icon-32.png" }, { text: "Twitter", value: 2, selected: false, description: "Description with Twitter", imageSrc: "http://dl.dropbox.com/u/40036711/Images/twitter-icon-32.png" }, { text: "LinkedIn", value: 3, selected: true, description: "Description with LinkedIn", imageSrc: "http://dl.dropbox.com/u/40036711/Images/linkedin-icon-32.png" }, { text: "Foursquare", value: 4, selected: false, description: "Description with Foursquare", imageSrc: "http://dl.dropbox.com/u/40036711/Images/foursquare-icon-32.png" } ]; Если отсылать эти данные в корзину, то $.ajax({ data: .... }) смотрим data Type: PlainObject or String т.е jquery сам разберется с типами (должен разобраться) Ничего не надо говнокодить... все красиво получается... Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 Ага.. увидел демку :( Первое что бросилось в глаза var ddData = $('#htmlselect-' + option_id) при неком стечении обстоятельств) таких объектов может быть несколько) поэтому это должен быть класс Причем add_bc(product_id) { нужно немного доработать function add_bc(product_id,el) { onclick="add_bc('48',this) this и el нужны чтобы однозначно определить в каком контейнере нажали кнопку <div class="product-grid"> <div class="product-48"> тогда function add_bc(product_id,el) { var parent = $(el).closest(".product-"+product_id) ... } далее весь раскручивать от parent например parent.find("[id~=htmlselect-").each(function(){ data = $(this).data('ddslick') .... }) Как-то так.... 1 Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 5 липня 2014 Автор Share Опубліковано: 5 липня 2014 Логика хороша, уже ближе к сути, но всё равно, проблема тут: var data = '&' + name + '='+ value; 1. Данные - не массив объектов JSON, они - "вытяжка" из ddData = $('#htmlselect-' + option_id).data('ddslick'); 2. Как разбить по идентификаторам ddData, в зависимости от опции и соответственно как добавить (пусть сам уж jquery разбирается) в data значения: [option] => Array ( [227] => 18, //option #1 ..[ ddData_1.selectedData.name] => ddData_1.selectedData.value, [228] => 22 //option #2 ..[ ddData_2.selectedData.name] => ddData_2.selectedData.value; ) Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 5 липня 2014 Share Опубліковано: 5 липня 2014 ddData[0] = $('#htmlselect-228').data('ddslick') ddData[1] = $('#htmlselect-229').data('ddslick') data = '' $.each(ddData,function(index, valval){ var name = valval.selectedData.name; // option=[option_id] var value = valval.selectedData.value; // value data += '&' + name + '='+ value; }) код проверен на твоих данных data = "&option[228]=0&option[229]=0" data = "&option[228]=0&option[229]=25" 1 Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 5 липня 2014 Автор Share Опубліковано: 5 липня 2014 Почти реализовал, вернее через $.each( как раз получилось то, что задумывалось, теперь завис на первостепенном этапе - это индексе для ddData[], если автоинкремент ставлю, то обнуляет после каждого forech товара... но это несущественно, как то придумаю уж... как реализую, влеплю контрольно репу, за подсказку по jquery... P.S. Сам забуксовал... вынес начальное значение инкремента за массив и всё стало как надо... Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Разное Курилка addToCart + 2-ве опции Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Baco Опубліковано: 4 липня 2014 Автор Share Опубліковано: 4 липня 2014 var ddData = $('#htmlselect-' + option_id).data('ddslick'); - входные данные смотреть мануал по работе скрипта, если писать по "индостайлу", то получается так: var ddData_1 = $('#htmlselect-227').data('ddslick'); // Тут получаем набор объектов через библиотеку опции по ID 227 var ddData_2 = $('#htmlselect-228').data('ddslick'); // Тут получаем набор объектов через библиотеку опции по ID 228 if (ddData_1 !== null && ddData_1 !== undefined) { // проверочка... var name_1 = ddData_1.selectedData.name; // option=[227] var value_1 = ddData_1.selectedData.value; // value 18 var data_1 = '&' + name_1 + '='+ value_1; // формирование строки для addToCart } if else (ddData_2 !== null && ddData_2 !== undefined) { var name_2 = ddData_2.selectedData.name; // option=[228] var value_2 = ddData_2.selectedData.value; // value 12 var data_2 = '&' + name_2 + '='+ value_2; // формирование строки для addToCart } else { var data_1 = ''; var data_2 = ''; } вот как бы так не говнокодить, а выбрать и "смержить" значения все в data, кстати объектами не получится послать, надо только в массиве опции высылать постом... Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 Ок... из примера Массив объектов var ddData = [ { text: "Facebook", value: 1, selected: false, description: "Description with Facebook", imageSrc: "http://dl.dropbox.com/u/40036711/Images/facebook-icon-32.png" }, { text: "Twitter", value: 2, selected: false, description: "Description with Twitter", imageSrc: "http://dl.dropbox.com/u/40036711/Images/twitter-icon-32.png" }, { text: "LinkedIn", value: 3, selected: true, description: "Description with LinkedIn", imageSrc: "http://dl.dropbox.com/u/40036711/Images/linkedin-icon-32.png" }, { text: "Foursquare", value: 4, selected: false, description: "Description with Foursquare", imageSrc: "http://dl.dropbox.com/u/40036711/Images/foursquare-icon-32.png" } ]; Если отсылать эти данные в корзину, то $.ajax({ data: .... }) смотрим data Type: PlainObject or String т.е jquery сам разберется с типами (должен разобраться) Ничего не надо говнокодить... все красиво получается... Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 Ага.. увидел демку :( Первое что бросилось в глаза var ddData = $('#htmlselect-' + option_id) при неком стечении обстоятельств) таких объектов может быть несколько) поэтому это должен быть класс Причем add_bc(product_id) { нужно немного доработать function add_bc(product_id,el) { onclick="add_bc('48',this) this и el нужны чтобы однозначно определить в каком контейнере нажали кнопку <div class="product-grid"> <div class="product-48"> тогда function add_bc(product_id,el) { var parent = $(el).closest(".product-"+product_id) ... } далее весь раскручивать от parent например parent.find("[id~=htmlselect-").each(function(){ data = $(this).data('ddslick') .... }) Как-то так.... 1 Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 5 липня 2014 Автор Share Опубліковано: 5 липня 2014 Логика хороша, уже ближе к сути, но всё равно, проблема тут: var data = '&' + name + '='+ value; 1. Данные - не массив объектов JSON, они - "вытяжка" из ddData = $('#htmlselect-' + option_id).data('ddslick'); 2. Как разбить по идентификаторам ddData, в зависимости от опции и соответственно как добавить (пусть сам уж jquery разбирается) в data значения: [option] => Array ( [227] => 18, //option #1 ..[ ddData_1.selectedData.name] => ddData_1.selectedData.value, [228] => 22 //option #2 ..[ ddData_2.selectedData.name] => ddData_2.selectedData.value; ) Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 5 липня 2014 Share Опубліковано: 5 липня 2014 ddData[0] = $('#htmlselect-228').data('ddslick') ddData[1] = $('#htmlselect-229').data('ddslick') data = '' $.each(ddData,function(index, valval){ var name = valval.selectedData.name; // option=[option_id] var value = valval.selectedData.value; // value data += '&' + name + '='+ value; }) код проверен на твоих данных data = "&option[228]=0&option[229]=0" data = "&option[228]=0&option[229]=25" 1 Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 5 липня 2014 Автор Share Опубліковано: 5 липня 2014 Почти реализовал, вернее через $.each( как раз получилось то, что задумывалось, теперь завис на первостепенном этапе - это индексе для ddData[], если автоинкремент ставлю, то обнуляет после каждого forech товара... но это несущественно, как то придумаю уж... как реализую, влеплю контрольно репу, за подсказку по jquery... P.S. Сам забуксовал... вынес начальное значение инкремента за массив и всё стало как надо... Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Разное Курилка addToCart + 2-ве опции Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
chukcha Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 Ок... из примера Массив объектов var ddData = [ { text: "Facebook", value: 1, selected: false, description: "Description with Facebook", imageSrc: "http://dl.dropbox.com/u/40036711/Images/facebook-icon-32.png" }, { text: "Twitter", value: 2, selected: false, description: "Description with Twitter", imageSrc: "http://dl.dropbox.com/u/40036711/Images/twitter-icon-32.png" }, { text: "LinkedIn", value: 3, selected: true, description: "Description with LinkedIn", imageSrc: "http://dl.dropbox.com/u/40036711/Images/linkedin-icon-32.png" }, { text: "Foursquare", value: 4, selected: false, description: "Description with Foursquare", imageSrc: "http://dl.dropbox.com/u/40036711/Images/foursquare-icon-32.png" } ]; Если отсылать эти данные в корзину, то $.ajax({ data: .... }) смотрим data Type: PlainObject or String т.е jquery сам разберется с типами (должен разобраться) Ничего не надо говнокодить... все красиво получается... Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 Ага.. увидел демку :( Первое что бросилось в глаза var ddData = $('#htmlselect-' + option_id) при неком стечении обстоятельств) таких объектов может быть несколько) поэтому это должен быть класс Причем add_bc(product_id) { нужно немного доработать function add_bc(product_id,el) { onclick="add_bc('48',this) this и el нужны чтобы однозначно определить в каком контейнере нажали кнопку <div class="product-grid"> <div class="product-48"> тогда function add_bc(product_id,el) { var parent = $(el).closest(".product-"+product_id) ... } далее весь раскручивать от parent например parent.find("[id~=htmlselect-").each(function(){ data = $(this).data('ddslick') .... }) Как-то так.... 1 Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 5 липня 2014 Автор Share Опубліковано: 5 липня 2014 Логика хороша, уже ближе к сути, но всё равно, проблема тут: var data = '&' + name + '='+ value; 1. Данные - не массив объектов JSON, они - "вытяжка" из ddData = $('#htmlselect-' + option_id).data('ddslick'); 2. Как разбить по идентификаторам ddData, в зависимости от опции и соответственно как добавить (пусть сам уж jquery разбирается) в data значения: [option] => Array ( [227] => 18, //option #1 ..[ ddData_1.selectedData.name] => ddData_1.selectedData.value, [228] => 22 //option #2 ..[ ddData_2.selectedData.name] => ddData_2.selectedData.value; ) Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 5 липня 2014 Share Опубліковано: 5 липня 2014 ddData[0] = $('#htmlselect-228').data('ddslick') ddData[1] = $('#htmlselect-229').data('ddslick') data = '' $.each(ddData,function(index, valval){ var name = valval.selectedData.name; // option=[option_id] var value = valval.selectedData.value; // value data += '&' + name + '='+ value; }) код проверен на твоих данных data = "&option[228]=0&option[229]=0" data = "&option[228]=0&option[229]=25" 1 Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 5 липня 2014 Автор Share Опубліковано: 5 липня 2014 Почти реализовал, вернее через $.each( как раз получилось то, что задумывалось, теперь завис на первостепенном этапе - это индексе для ddData[], если автоинкремент ставлю, то обнуляет после каждого forech товара... но это несущественно, как то придумаю уж... как реализую, влеплю контрольно репу, за подсказку по jquery... P.S. Сам забуксовал... вынес начальное значение инкремента за массив и всё стало как надо... Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Разное Курилка addToCart + 2-ве опции Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
chukcha Опубліковано: 4 липня 2014 Share Опубліковано: 4 липня 2014 Ага.. увидел демку :( Первое что бросилось в глаза var ddData = $('#htmlselect-' + option_id) при неком стечении обстоятельств) таких объектов может быть несколько) поэтому это должен быть класс Причем add_bc(product_id) { нужно немного доработать function add_bc(product_id,el) { onclick="add_bc('48',this) this и el нужны чтобы однозначно определить в каком контейнере нажали кнопку <div class="product-grid"> <div class="product-48"> тогда function add_bc(product_id,el) { var parent = $(el).closest(".product-"+product_id) ... } далее весь раскручивать от parent например parent.find("[id~=htmlselect-").each(function(){ data = $(this).data('ddslick') .... }) Как-то так.... 1 Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 5 липня 2014 Автор Share Опубліковано: 5 липня 2014 Логика хороша, уже ближе к сути, но всё равно, проблема тут: var data = '&' + name + '='+ value; 1. Данные - не массив объектов JSON, они - "вытяжка" из ddData = $('#htmlselect-' + option_id).data('ddslick'); 2. Как разбить по идентификаторам ddData, в зависимости от опции и соответственно как добавить (пусть сам уж jquery разбирается) в data значения: [option] => Array ( [227] => 18, //option #1 ..[ ddData_1.selectedData.name] => ddData_1.selectedData.value, [228] => 22 //option #2 ..[ ddData_2.selectedData.name] => ddData_2.selectedData.value; ) Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 5 липня 2014 Share Опубліковано: 5 липня 2014 ddData[0] = $('#htmlselect-228').data('ddslick') ddData[1] = $('#htmlselect-229').data('ddslick') data = '' $.each(ddData,function(index, valval){ var name = valval.selectedData.name; // option=[option_id] var value = valval.selectedData.value; // value data += '&' + name + '='+ value; }) код проверен на твоих данных data = "&option[228]=0&option[229]=0" data = "&option[228]=0&option[229]=25" 1 Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 5 липня 2014 Автор Share Опубліковано: 5 липня 2014 Почти реализовал, вернее через $.each( как раз получилось то, что задумывалось, теперь завис на первостепенном этапе - это индексе для ddData[], если автоинкремент ставлю, то обнуляет после каждого forech товара... но это несущественно, как то придумаю уж... как реализую, влеплю контрольно репу, за подсказку по jquery... P.S. Сам забуксовал... вынес начальное значение инкремента за массив и всё стало как надо... Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Разное Курилка addToCart + 2-ве опции Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich
Baco Опубліковано: 5 липня 2014 Автор Share Опубліковано: 5 липня 2014 Логика хороша, уже ближе к сути, но всё равно, проблема тут: var data = '&' + name + '='+ value; 1. Данные - не массив объектов JSON, они - "вытяжка" из ddData = $('#htmlselect-' + option_id).data('ddslick'); 2. Как разбить по идентификаторам ddData, в зависимости от опции и соответственно как добавить (пусть сам уж jquery разбирается) в data значения: [option] => Array ( [227] => 18, //option #1 ..[ ddData_1.selectedData.name] => ddData_1.selectedData.value, [228] => 22 //option #2 ..[ ddData_2.selectedData.name] => ddData_2.selectedData.value; ) Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 5 липня 2014 Share Опубліковано: 5 липня 2014 ddData[0] = $('#htmlselect-228').data('ddslick') ddData[1] = $('#htmlselect-229').data('ddslick') data = '' $.each(ddData,function(index, valval){ var name = valval.selectedData.name; // option=[option_id] var value = valval.selectedData.value; // value data += '&' + name + '='+ value; }) код проверен на твоих данных data = "&option[228]=0&option[229]=0" data = "&option[228]=0&option[229]=25" 1 Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 5 липня 2014 Автор Share Опубліковано: 5 липня 2014 Почти реализовал, вернее через $.each( как раз получилось то, что задумывалось, теперь завис на первостепенном этапе - это индексе для ddData[], если автоинкремент ставлю, то обнуляет после каждого forech товара... но это несущественно, как то придумаю уж... как реализую, влеплю контрольно репу, за подсказку по jquery... P.S. Сам забуксовал... вынес начальное значение инкремента за массив и всё стало как надо... Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Разное Курилка addToCart + 2-ве опции
chukcha Опубліковано: 5 липня 2014 Share Опубліковано: 5 липня 2014 ddData[0] = $('#htmlselect-228').data('ddslick') ddData[1] = $('#htmlselect-229').data('ddslick') data = '' $.each(ddData,function(index, valval){ var name = valval.selectedData.name; // option=[option_id] var value = valval.selectedData.value; // value data += '&' + name + '='+ value; }) код проверен на твоих данных data = "&option[228]=0&option[229]=0" data = "&option[228]=0&option[229]=25" 1 Надіслати Поділитися на інших сайтах More sharing options... Baco Опубліковано: 5 липня 2014 Автор Share Опубліковано: 5 липня 2014 Почти реализовал, вернее через $.each( как раз получилось то, что задумывалось, теперь завис на первостепенном этапе - это индексе для ddData[], если автоинкремент ставлю, то обнуляет после каждого forech товара... но это несущественно, как то придумаю уж... как реализую, влеплю контрольно репу, за подсказку по jquery... P.S. Сам забуксовал... вынес начальное значение инкремента за массив и всё стало как надо... Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку
Baco Опубліковано: 5 липня 2014 Автор Share Опубліковано: 5 липня 2014 Почти реализовал, вернее через $.each( как раз получилось то, что задумывалось, теперь завис на первостепенном этапе - это индексе для ddData[], если автоинкремент ставлю, то обнуляет после каждого forech товара... но это несущественно, как то придумаю уж... как реализую, влеплю контрольно репу, за подсказку по jquery... P.S. Сам забуксовал... вынес начальное значение инкремента за массив и всё стало как надо... Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0
Recommended Posts