$.ajax({
url: "test.html",
context: document.body,
success: function(){
$(this).addClass("done");
}
});
如何在test.html中运行javascript并使其正常工作?
由于 Abhinab
答案 0 :(得分:1)
它并没有真正起作用。页面加载时,浏览器会解释页面中的Javascript。在这种情况下,您没有在浏览器中加载页面,只是在您的ajax响应中获取页面。该响应HTML可能具有< script>其中的元素,但没有任何东西可以用它做任何事情。
我甚至犹豫不决,但你可以解析你的成功函数中的响应,找到所有的脚本元素,然后将你想要的任何内容添加到你自己的页面的DOM中。这应该导致脚本被提取和评估。我不敢提它,因为它闻起来真的坏了。如果我的任何开发人员这样做,我们将进行艰难的对话。 ; - )
可能有助于详细说明您要完成的任务,因为可能有更优雅的方式来实现您的目标。
答案 1 :(得分:0)
function call_recursive(){
var pages ["test1.html", "test2.html", "test3.html" ];
while(pages.length() > 0){
page = pages.pop();
$.ajax({
url: page,
context: document.body,
success: function(){
$("div#logger").append("<p>" + page " loded </p>");
},
error: function(){
$("div#logger").append("<p class'error'>" + page " is not loded </p>");
},
});
}
}
执行 call_recursive