Не обновляются поля заказа ajax msOrder
Всем привет. Нужно было сделать, чтобы если заполнено текстовое поле extfld_delivery_price на странице оформления заказа, например значением 100, то это поле было доступно в кастомном обработчике доставки в функции getCost() в массиве $orderData = $order->get().
Я делал так:
Может быть кто-то сталкивался с этим? Спасибо
Я делал так:
// Заполняем поле значением
$(miniShop2.Order.order + ' [name="extfld_delivery_price"]').val('100').change();
miniShop2.Order.getcost();
И иногда это поле обновляется и доступно в функции getCost() данного класса в массиве $orderData, а иногда нет. Уловить закономерность и причины такого поведения не получается.Может быть кто-то сталкивался с этим? Спасибо
Комментарии: 3
Скорее всего дело в том, что за короткое время происходит изменение нескольких полей заказа и, поскольку данные записываются в сессию, она не успевает обновится. Тут либо переходить на хранение данных в БД, если версия minishop2 позволяет, или ставить задержку через setTimeout().
То есть может получиться так, что мне придется вызывать свой action который будет добавлять поле с таким значением в сессию заказа?
miniShop2.Order.add('extfld_delivery_price','100', function() {
miniShop2.Order.getcost();
})
Это вот работает, но чтобы увидеть изменения нужно перезагрузить страницу. Посмотрю еще. Спасибо
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.