Создание и загрузка файла JS из строки кода JS, возвращенной из запроса AJAX - PullRequest
0 голосов
/ 24 июня 2018

Я пытаюсь динамически загрузить html-контент и выполнить JS для ответа ajax. Объект ответа имеет две пары ключ: значение .

  • content: с элементами html
  • js: с необходимыми js

Вот код:

$.post("/some_url.php",{job: "getThatPage"},function(response) {

    /* parsing response as JSON */
    let ajaxResponse = JSON.parse(response);

    /* adding content to page body */
    $("body").html(ajaxResponse.content);

    /* now ajax.js is a string containing the required JS*/
    /* how to execute this script? */

});

Скрипт, возвращенный из запроса ajax, не выполняется, даже если он добавлен в DOM, поэтому я разделил содержимое и скрипт. Я знаю, что могу поместить требуемый JS в отдельный файл и загрузить его с getScript() в случае успеха, но это мне здесь не поможет, потому что мой ajax-запрос возвращает некоторый настроенный JS для каждого вошедшего в систему пользователя.

Я думаю, что это можно решить, если каким-то образом мне удалось создать .js file, поместить в него содержимое ajax.js и загрузить его, используя метод getScript(). Вот что говорит мне мой глупый ум.

Помощь будет оценена.

1 Ответ

0 голосов
/ 24 июня 2018

Вы уверены, что содержимое содержит тег сценария?Если не оберните это в одном.

$('body').append ($('<script>').html(ajaxResponse.content));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...