Перейти к содержанию
Форум поддержки пользователей VamShop

Добавление нескольких товаров в корзину с помощью поля


Рекомендуемые сообщения

При разборе полетов с добавлением нескольких товаров, используя следующие рекомендации


function doAddProduct(uniqname) {
//jQuery.noConflict();
var forma = jQuery(uniqname+' input,select');
var data = 'q=includes/modules/ajax/ajaxCart.php&';
forma.each(function(n,element){
if (element.type == "radio" || element.type == "checkbox") {
if (element.checked)
tmp = element.name + "=" + element.value + "&";
} else {
tmp = element.name + "=" + element.value + "&";
}
if (tmp.length > 3) data = data + tmp;
});
data = data + "action=add_product";

jQuery.ajax({
url : "index_ajax.php",
dataType : "html",
data : data,
type : "GET",
success : function(msg) {
jQuery("#divShoppingCart").html(msg);
}
});
}
[/CODE]

Столкнулся со следующей проблемой. Видно, что пришлось закомментировать первую строку функции. Почему так сделал. При добавлении товара с помощью данной функции и затем удаления нативной кнопочкой удаления ВамШопа в боксе корзины, браузер переходил либо на страницу продукт_инфо либо на главную, при этом удаление не производилось.

Вопрос следующий. Насколько череват коммент первой строки и если все же череват где следует рыть и если можно подробней как исправить странное поведение перехода на другие страницы?(при переходе в адресную строку поститься экшн)

Хочется добавить что если удалять товары после обновления страницы то все норм.

Изменено пользователем Maximkin
Ссылка на сообщение
Поделиться на другие сайты

По идее, если закомментировали эту строку, то лучше и ниже в коде поменять везде jQuery на $

Ссылка на сообщение
Поделиться на другие сайты

Да и вообще говоря, в текущей версии уже нет по умолчанию строки noConflict, т.е. по умолчанию тоже убрано уже везде.

Ссылка на сообщение
Поделиться на другие сайты

Да и вообще говоря, в текущей версии уже нет по умолчанию строки noConflict, т.е. по умолчанию тоже убрано уже везде.

Странный очень баг. Если заменить как вы сказали jQuery на $, то всё функционирует нормально. Добавив бокс поиска в index.html, добавление товаров теперь происходит только с перезагрузкой страницы. Удалил бокс поиска из index.html и всё опять нормально работает. Как поправить?

Ссылка на сообщение
Поделиться на другие сайты

Странный очень баг. Если заменить как вы сказали jQuery на $, то всё функционирует нормально. Добавив бокс поиска в index.html, добавление товаров теперь происходит только с перезагрузкой страницы. Удалил бокс поиска из index.html и всё опять нормально работает. Как поправить?

Походу исправил. Заменил в боксе поиска jQuery на $. Можете объяснить как изменится функционал если производить такие замены? Насколько это черевато и чем, если менять везде jQuery на $.

Ссылка на сообщение
Поделиться на другие сайты

Никак не изменится.

По умолчанию сейчас и так везде на $ заменено.

noConflict раньше использовался в надежде, что поможет избежать конфликтов с другими js файлами, но в реальности такой проблемы как таковой особо не было замечено и noConflict вообще удалили.

Ссылка на сообщение
Поделиться на другие сайты

noConflict

используется если в использовании 1 функции в разных файлах действуют одни и те же переменные, плагины.

так же он поможет оправиться от проблем (зачастую с валидацией) с сторонними скриптами ( не jQuery )

$ работает практически всегда, если в правильном порядке подключаются JS файлы и выполняются скрипты

Ссылка на сообщение
Поделиться на другие сайты
×
×
  • Создать...