Сделать Javascript document.write с тегом сценария Блок - PullRequest
0 голосов
/ 30 апреля 2011

Кто-нибудь знает, как я могу сделать document.write с выполнением блока тега script?

<script type="text/javascript">
    var test = "bad";
    document.write('<script type="text/javascript" src="js.php"><\/script>');
    console.log(test);
</script>

Где js.php

<?PHP sleep(1); echo "var test='good';"; ?>

console.log должен выводить «good», но выводить «bad». Конечно, через секунду переменная действительно меняется на «хорошо», но мне определенно нужно, чтобы она блокировалась. Спасибо !!

Я вижу, что происходит. Похоже, что любой document.write в текущем блоке скрипта действительно записывается после текущего блока скрипта.

Ответы [ 2 ]

2 голосов
/ 30 апреля 2011

Кажется, я помню, что существует обходной путь для написания тегов <script>:

document.write('<scr'+'ipt type="text/javascript" src="js.php"><\/scr'+'ipt>');
1 голос
/ 30 апреля 2011

Выполните Ajax-вызов, чтобы загрузить больше данных. Вряд ли это можно настроить. Вы можете легко сделать это с помощью jQuery и JSON.

...