AJAX и UMI.CMS — это просто. JSON
Опубликовано: 01.09.2018
Вам наверняка известно, что вы можете получить любую страницу, объект, макрос(функцию) в json-формате(если не знали, я отрываю вам глаза ;)). С json и UMI очень просто работать, но к сожалению, об этом мало где написано... Исправляю ситуацию. Кстати, не так давно я написал стать про UDATA/UPAGE
Движок UMI.CMS | Урок #9 - Создание корзины и оформления заказа
В этом примере, давайте попробуем запросить информацию по корзине пользователя.
В отличии от примера с UDATA/UPAGE , не нужно ничего трансформировать.
Нужно к строке URL добавить .json и dataType установить json. Далее обработать результат, который вернет сервер.
Охранные системы для дома и дачи
$.ajax({ url: '/udata/emarket/cart/.json', type: "get", dataType: 'json', async: true, timeout: 30000, beforeSend: function (data) { // Функция выполняется перед отправкой AJAX запроса на сервер }, success: function (data) { var html = ''; html += '<div class="product-info">'; html += '<div>Товаров в корзине: ' + data.summary.amount + ' шт. товаров</div>'; html += '<div>На сумму: ' + data.summary.price.actual + ' ' + data.summary.price.suffix + '</div>'; html += '<hr />'; html += '<div>У вас в корзине:</div>'; html += '<ul>'; for (i in data.items.item) { var item = data.items.item[i]; html += '<li>' + item.name + '</li>'; } html += '</ul>'; html += '</div>'; $('#resp1').html('').html(html); }, complete: function (data) { // Функция выполняется по завершению AJAX запроса и функции success }, error: function (data) { // Функция выполняется в случае ошибки } });
Демо здесь .
Кстати на сайте sapphire-shop.com.ua реализован такой механизм регистрации ????
Важно, это демонстрация возможностей, прошу не писать о различного рода проверках кода и прочем, эта задача ложиться на ваши плечи.