#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 опубликуйте свой новый код после удаления этих строк, возможно, вы удалили неправильные строки..