Как передать функцию Javascript в динамически создаваемый div - PullRequest
0 голосов
/ 19 октября 2011

Я хочу передать функцию javascript динамически созданному div, как я пытаюсь описать ниже.Если заменить строку сценария обычной строкой, это сработает, но есть ли способ передать сценарий JS в createTextNode?

    newDiv = document.createElement("div");
    newContent = document.createTextNode("<script type=\"text/javascript\">var pager = new Pager(3); pager.init(); pager.showPageNav('pager', 'pageNavPosition'); pager.showPage(1); </script>");
    newDiv.appendChild(newContent);

TIA

Ответы [ 2 ]

1 голос
/ 19 октября 2011
var js=document.createElement('script');
  js.setAttribute("type","text/javascript");
  js.appendChild(document.createTextNode(" var pager = new Pager(3); pager.init(); pager.showPageNav('pager', 'pageNavPosition'); pager.showPage(1); "));
  var newDiv=document.createElement("div");
  newDiv.appendChild(js);
  document.appendChild(newDiv);
0 голосов
/ 19 октября 2011
Тег

A <script> не является текстовым узлом.
Вам нужно создать элемент <script>, используя document.createElement.

Однако вы не должны этого делать, если только вы не пытаетесь загрузить файл внешнего скрипта динамически (например, JSONP)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...