jQuery:通过Ajax将javascript添加到页面但不执行

时间:2011-08-08 16:58:00

标签: javascript jquery ajax

我使用jQuery发出ajax请求并将代码添加到我的页面。我添加到页面的代码不仅包含HTML,还包含javascript。

显然没有调用javascript代码!如何强制执行我新添加的javascript源代码?

1 个答案:

答案 0 :(得分:1)

您可能正在使用jQuery(element).load(url)方法。

jQuery使用浏览器的.innerHTML属性来解析检索到的文档并将其插入到当前文档中。在此过程中,浏览器通常会过滤文档中的元素,例如,或元素。因此,.load()检索的元素可能与浏览器直接检索文档的内容不完全相同。

尝试确定从服务器接收的内容范围,例如:

// will load only the content inside the element with id="container"
jQuery(element).load("yoururl #container"); 

您可能应该尝试使用完整的回调从脚本执行JS代码,例如:

jQuery(element).load("yoururl #container", function(response, status, xhr) {
    do_stuff_after_load();
}