неопределенная ошибка js index.html для другого js

#javascript #undefined

#javascript #не определено

Вопрос:

неопределенная ошибка js

у нас есть следующий код виджета: index.html

 <script type="text/javascript" language="javascript"> 
//<![CDATA[
 var param1 = "value";
 var param2 = "value2";

  //]]>
  </script> 
<script type="text/javascript" src="http://example.com/js/widget.js"></script>
  

widget.js

  var param1;
 var param2;
 document.write('<iframe '
                          ' allowtransparency="true"'
                          ' src="http://example.com/html/'
                          '?param1='    param1
                          'amp;param2='    param2
                          '">'
                          '</iframe>');
  

но
widget.js L6 param1== неопределенный и param2 == неопределенный
почему?
param1 мертв в widget.js L1?

Ответ №1:

необходимо удалить определения переменных в widget.js ключевое слово var определяет новую переменную со значением undefined.

 var param1; //remove this
var param2; //remove this
 document.write('<iframe '
                          ' allowtransparency="true"'
                          ' src="http://example.com/html/'
                          '?param1='    param1
                          'amp;param2='    param2
                          '">'
                          '</iframe>');
  

Комментарии:

1. Прошу прощения за мой неправильный код. и я могу решить проблему. большое вам спасибо!

Ответ №2:

Я собираюсь рискнуть предположить и предположить, что это не полное widget.js и что предоставленный вами код находится внутри вызова функции.

Первые две строки widget.js опубликованный вами код создаст новые версии param1 / 2 в локальной области видимости, и они будут неопределенными.

Удалите эти строки.

Комментарии:

1. Я удалил, но проблема не устранена

2. @fred опубликуйте свой новый код после удаления этих строк, возможно, вы удалили неправильные строки..