当div动态加载到页面时,执行在div内部编写的脚本

时间:2013-09-27 14:55:01

标签: javascript html ajax

我有一个看起来像

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

现在我将这个div作为Ajax调用的响应并将其附加到正文中。现在当附加到body时,脚本标记内的函数应该被执行。但不是..这里有什么问题?

2 个答案:

答案 0 :(得分:0)

如果需要动态插入一些脚本,则应使用document.createElement("script");。这是推荐的方法。

无论如何,以下代码对我来说还不错:

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

确保您正确地逃避了脚本。

答案 1 :(得分:0)

您的功能未执行,因为它未被调用。

你应该使用一个自动执行的功能,它会在加载后立即运行:

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