[identity profile] dimmik.livejournal.com posting in [community profile] useful_faq
Даже не знаю в какое сообщество написать.
Вроде и не ява и не сисадминский вопрос и не по железу.
В общем, если знаете - подскажите плиз по теме или название сообщества куда обратиться.


Для динамического формирования контента используется следующая процедура.
Создается пустой элемент <script>, затем из другого скрипта устанавливается его src (ссылка на внешний скрипт)
и потом вызывается функция которая в этом самом внешнем скрипте определена.
Примерно так:
<script id="dyn"></script>
<script>
finction click( val ){
  document.getElementById( "dyn" ).src = "/someScript.js?param=" + val;
  document.write( someScriptFunction() );
}
</script>
<input type="text" onBlur="click( this.value );">

Предполагается что после ввода текста и кликания на любом месте страницы будет определен src для скрипта с id="dyn", в котором будет определена someScriptFunction (содержимое которой зависит от параметров) и затем эта функция будет как-то использована.
Например, для вывода какого-либо динамического списка без перезагрузки страницы.

В Opera 8 это все работает без проблем.
На этапе изменения src у элемента <script> подгружается новый js, сразу после подгрузки доступна эта функция, сгенерированная с правильными параметрами.
В общем, все как предполагается.

А вот в Internet Explorer - проблема.
При первом обращении пишет ошибку, при последующих - использует ту функцию которая была подгружена раньше.
Такое впечатление что перед тем как начать вызывать javaScript эксплорер фиксирует текущее состояние js-кода и в процессе исполнения "текущей сессии" js его не изменяет.
Потом - изменяет, и при следующем обращении мы имеем уже дело с js, в который подгружена функция, но с предыдущим значением параметра.

И - вопрос.
Можно ли как-нибудь из js заставить IE обновлять содержимое скрипта в текущей "сессии выполнения"?

Да, еще - только что обнаружил.
Если после изменения src выдавать alert( "something" ); то функция благополучно подгружается...
Но это не выход - надо чтобы динамически менялось без вопросов к юзеру...