JS-скрипты

Для работы модуля часто нужен отдельный JavaScript-сценарий. Есть несколько вариантов подключения JS-файлов. Рассмотрим их на примере.

  • modules/shop/admin/js/shop.admin.js подключиться для редактирования товаров (на всех страницах).
  • modules/shop/admin/js/shop.admin.category.js подключиться для редактирования категорий магазина

Еще можно добавить edit, тогда JS-файл подключиться только для редактирования или добавления элемента. Например, modules/bs/admin/js/bs.admin.edit.js подключиться только для формы редактирования/добавления баннера.

Для подключений модуля тоже автоматически подключаются:

  • modules/images/admin/js/images.admin.inc.js – на действие edit при редактировании прикрепленных изображений в элементе;
  • modules/images/admin/js/images.admin.inc.config.js – на действие edit при редактировании настроек изображений в модуле.

Еще автоматически подгружаются файлы для функций из файла adm/includes/edit_functions.php:

  • adm/js/edit/admin.edit.поле.js – для обработки «поля»;
  • adm/js/edit/admin.edit.config.поле.js – для обработки «поля» в настройках модуля.

Ну и также можно вручную указать:

$this->diafan->_admin->js_view[] = 'modules/images/admin/js/images.admin.inc.js';

В коде JS-файлов тоже нужно учитывать свои особенности.

Чтобы корректно отправлялся запрос, проверялся идентификационный хэш, Ajax-запросы нужно посылать через функцию diafan_ajax.init():

diafan_ajax.init({
    
data: Передаваемые_данные_в_JSON,
    
url: Адрес_на_который_передаются_данные,
    
success: function(response) {
        
// обработка ответа response
    
}
});

Все данные являются не обязательными. Если возвращено response.redirect, то происходит редирект независимо от того, что определено в success.

Ваши комментарии и дополнения

Ваш комментарий будет первым.

Зарегистрируйтесь или авторизируйтесь для того, чтобы оставить комментарий.