Как я должен изменить внедренный элемент HTML с переменной, используя JavaScript? - PullRequest
0 голосов
/ 11 июня 2019

Вопрос: Как лучше вставлять HTML-код, содержащий javascript?

Скрипт для загрузки содержимого на странице:

elmnt = document.getElementById("contentcontainer");
elmnt.innerHTML = this.responseText;

Страница:

Welcome to our restaurant!
<div id="contentcontainer"></div>

Responsetext:

<div>
The menu for today:
<script> Script to get API resonse menu(today); <script>
</div>

Итак, я внедряю HTML, содержащий скрипт.Но сценарий не выполняется.Как мне изменить переменную HTML внутри инъекции?

Ответы [ 2 ]

0 голосов
/ 12 июня 2019

Я не понимаю, в чем проблема.InnerHtml должно работать идеально, если переменная является глобальной, а также вы получаете желаемое содержимое.

Вот пример того, что я понял из того, что вы хотите.

let str = '<p><script>var test="this is a test"</script></p>'

document.getElementsByTagName("BODY")[0].innerHTML  =str;

console.log(test) // and here is the injected script variable result

Чтобы получить содержимое сайта с URL-адреса, вы должны будете использовать библиотеку, такую ​​как jq getscriptПравильно ли я вас понял?

0 голосов
/ 12 июня 2019

Вы можете использовать " Строки шаблона " и внедрить уже обработанный HTML.

...