Javascript, загруженный вызовом Ajax, не выполняется? - PullRequest
0 голосов
/ 07 октября 2018

Я пытаюсь внедрить HTML-код с помощью Ajax-get на мою временную страницу.

Это работает так, как должно, только JavaScript не выполняется так, как я ожидал.Если я загружаю код независимо в браузере, то JavaScript выполняется так, как ожидалось.Если это реализовано с помощью Ajax на моей временной странице, это не так.Почему?

Вот код html и javascript, который я загружаю:

<link rel="stylesheet" type="text/css" href="/x/x/x/x/stylesheet.css">
<div id='content_Box'></div>
<script type="text/javascript" src="/x/x/x/x/javascript.js" charset="utf-8"></script>

А вот код ajax, который его загружает:

    var xhttp = new XMLHttpRequest();
    xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {

    content_Box.innerHTML = "";

    content_Box.innerHTML = this.responseText;

    }
    };

    xhttp.open("GET", Pfad, true);
    xhttp.send();

Спасибоза ваше время!

Ответы [ 2 ]

0 голосов
/ 07 октября 2018

Ваша проблема не в вызове ajax.

Проблема в том, что

content_Box.innerHTML = this.responseText;

не приводит к выполнению каких-либо сценариев.

См. Выполнение элементов, вставленных с .innerHTML для некоторого кода, который просматривает текст, находит сценарии и выполняет их.

0 голосов
/ 07 октября 2018

Это может зависеть от того, что на самом деле делает ваш js.
В любом случае, вы можете вызывать функции после загрузки ответа ajax (в xhttp.onreadystatechange), чтобы удостовериться, что они запускаются хотя бы один раз и на тех деталях, которые вы получили.из ответа.

...