Как добавить локальные переменные и другую функцию в элемент скрипта в Javascript

Мне нужно создать элемент скрипта, как показано ниже,

<div class="abcd">
    <script type="text/javascript">
  var a = "10";
  var b = "20";

        (function(d) {
            //lines of code of the function
        }(document));
    </script>
</div>

Я попытался завершить это, сначала создав элемент script с помощью параметра document.Createelement. и добавив эту часть сценария в div. Но не в состоянии добавить часть кода в часть сценария.

Нужно добавить как часть кода var, так и функцию.

Пожалуйста помоги.

заранее спасибо


РЕДАКТИРОВАТЬ ----

Я использую код ниже,

    var headtg = document.getElementsByTagName('head')[0];
    var divElm = document.createElement('div');
    var scpt = document.createElement('script');
    scpt.type = 'text/javascript';
    var clName= "TEST";


    var myfunc = function innercode(i) {
        var a = i;
 var b = a;

        (function (d) {
  //codes
        }(document));
    }

    divElm.className = "ABC_" + clName;
    divElm.appendChild(scpt);
    headtg.appendChild(divElm);
    scpt.innerHTML = myfunc;

Но выход идет как

<div class="abcd">
    <script type="text/javascript">
 function innercode(zID){var a = "10";var b = "20";;
    (function(d) {
            //lines of code of the function
        }(document));
    </script>
</div>

Но я хочу, чтобы результат был похож,

<div class="abcd">
    <script type="text/javascript">
 var a = "10";
        var b = "20";;
        (function(d) {
            //lines of code of the function
        }(document));
    </script>
</div>

пожалуйста, порекомендуйте

3 ответа

Решение

Вы можете просто получить элемент div, в котором вы хотите разместить код, а затем установить innerhtml в <script>your code here</script>

РЕДАКТИРОВАТЬ: попробуйте назначить свою функцию следующим образом:

var myFunc = function() {
    //Code
}

Тогда вы можете вызвать myFunc(параметры)

я понимаю, что вы прокомментируете мой ответ persevios вы хотите написать этот код:

var headtg = document.getElementsByTagName('head')[0]; 
var divElm = document.createElement('div');
var scpt = document.createElement('script');
scpt.type = 'text/javascript';
var clName= "TEST";
divElm.className = "ABC_" + clName; divElm.appendChild(scpt);
headtg.appendChild(divElm);

function innercode(i) {
  var a = i; var b = a;
}
function (d) {
   //codes }(document));
 } 

если это правда, вы можете написать так:

    <!DOCTYPE html>
<html>
<head>
    <script type="text/javascript" charset="utf-8" >
        var headtg = document.getElementsByTagName('head')[0]; 
        var divElm = document.createElement('div');
        var scpt = document.createElement('script');
        scpt.type = 'text/javascript';
        var clName= "TEST";
        divElm.className = "ABC_" + clName; divElm.appendChild(scpt);
        headtg.appendChild(divElm);

        function innercode(i) {
         var a = i; var b = a;
        }
        function (d) {
         //codes }(document));
          } 
    </script>
</head>
<body>

</body>
</html>

я надеюсь, что это сработает. дайте мне знать

Вы можете написать свой код так:

<html>
  <head>
      <script>
         var a = "10";
         var b = "20";

         function //here write you function name(d) {
        //lines of code of the function
          };
      </script>
  </head>
  <body>
  </body>
</html>

Или вы можете написать так:

<html>
<body onload='write your javascript code here'>
</body>
</html>

я надеюсь, что это сработает. дайте мне знать.

Другие вопросы по тегам