2013-09-27 41 views
0

我有一個div它看起來像在div裏面寫執行腳本時在div動態加載到頁面

<div> 
//Useful content 
    <script type="text/javascript"> 
     function(){ 
      //some useful code 
     } 
    </script> 
</div> 

現在我得到這個div作爲Ajax調用的響應,並追加到這一點身體。現在,當獲取附加到body時,腳本標記內的函數應該被執行。但不是......這裏有什麼問題?

+0

什麼叫功能?你得到什麼錯誤? – j08691

+0

jQuery?如果我沒有記錯,加載完成後添加到DOM的腳本不會自動運行。但如果你使用AJAX/DOM操作,jQuery將爲你運行'em。 –

回答

0

如果您需要動態插入某些腳本,則應該使用document.createElement("script");。這是推薦的方法。

不管怎樣,下面的代碼工作得很好,我:

var str = "<script>alert('Hi!');</scr"+"ipt>"; 
$('#container').append($(str)[0]); 

確保正確逃脫你的腳本。

0

你的函數沒有被執行,因爲它沒有被調用。

你應該使用一個自動執行的功能,將剛剛只要它的加載運行:

(function() { 
    alert('hello world!'); 
})();