@strify_25

Как подключить скрипты и стили компонента, подключаемого по ajax?

Здравствуйте. На сайте по нажатию на кнопку посылается ajax запрос в файл ajax.php, в котором есть подключение пролога и компонента формы:
<?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");?>
<?$APPLICATION->IncludeComponent(
		"custom:forms",
		"callMe",
		Array(
			"FORM_ID" => "callMe"
		)
	);?>

В шаблоне компонента лежит файл script.js , который, если бы не было ajax, должен был подключится автоматически. Этого не происходит, и код из файла script.js не работает. На форуме битрикса читал, что нужно использовать метод $APPLICATION->ShowAjaxHead(); , но ни его документации, ни примера я не нашел. Так как же все таки подключить необходимые скрипты после ajax загрузки компонента?
  • Вопрос задан
  • 3694 просмотра
Пригласить эксперта
Ответы на вопрос 2
@ZardoZAntony
программист, сис. админ
после успешного выполнения Ajax запроса в JS:
в res - ответ сервера c HTML, в котором есть и скрипты

let processed = BX.processHTML(res, false); // парсим HTML
BX.ajax.processScripts(processed.SCRIPT);  //выполняем найденные скрипты
Ответ написан
Комментировать
AlexeyCaTHaR
@AlexeyCaTHaR
Посмотрите в модуле, как реализован метод. Там всё предельно просто и понятно

public function ShowAjaxHead($bXhtmlStyle = true, $showCSS = true, $showStrings = true, $showScripts = true)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы