2

重複の可能性:
動的に読み込まれた JavaScript ブロックをどのように実行しますか?

私はここで私のような質問をたくさん見てきましたが、私に合った答えが見つかりませんでした.

scriptJavascriptを含むタグも含めて、AJAX経由でコードをロードしています。すでにわかっているように、この Javascript は実行されません。

また、それが役立つこともわかりましたeval()が、私はJavascriptの初心者であり、今回だけ必要なので、正確にどこに置くべきかわかりません.

私の PHP スクリプトは文字列を返しており、それを Javascript で分割してページの別の部分に配置しています。これはうまくいっています。パーツの 1 つは次のもので構成されます。

<div id=\"fb-root\"></div> <script>(function(d, s, id) {var js, fjs = d.getElementsByTagName(s)[0];if (d.getElementById(id)) return;js = d.createElement(s); js.id = id;js.src = \"//connect.facebook.net/de_DE/all.js#xfbml=1\";fjs.parentNode.insertBefore(js, fjs);}(document, 'script', 'facebook-jssdk'));</script>

このように含まれています:

document.getElementById("id").innerHTML=response1;

response1文字列を分割した後、上記のコードを配置した変数はどこにありますか。誰でも、簡単な方法で私を助けることができますか?

4

1 に答える 1

9

eval() を使用できます。スクリプトに ID を指定する必要があります。

<script id='script'>
     some javascript
</script>

そして、ajax 応答を読み込んだ後、スクリプトを読み込むために次の行を追加します。

eval(document.getElementById('script').innerHTML);

幸運を!

于 2012-08-18T18:34:44.287 に答える