将HTML页面替换为通过AJAX检索的内容

我有一个典型结构的HTML页面:

<html>
  <head>
   <script src="..." ></script>
   <style>...</style>
  </head>
  <body>
   content
  </body>
  <script>
    var success_callback = function(data) {
      // REPLACE PAGE CONTENT & STRUCTURE WITH "data"
    }
    ajax(url, params, success_callback);
  </script>
</html>

你认为这是可能的吗? 我已经尝试给html标签一个id并且做$(id).replace(data); 没有成功。

不要问我为什么,但那是我需要的(我正在与一个特殊的“混搭建设者”网站合作......这是一个很长的故事)。

编辑 :我忘了说在接收到的内容中的脚本必须被执行 ,甚至包括使用<script src="...">外部脚本。


jQuery试试这个:

$('body').load( url,[data],[callback] );

通过docs.jquery.com / Ajax / load了解更多信息


最简单的方法是使用以下命令设置新的HTML内容:

document.open();
document.write(newContent);
document.close();

原型: $(id).update(data)

和jQuery: $('#id').replaceWith(data)

但是document.getElementById(id).innerHTML=data也可以工作。

编辑:原型和jQuery自动为您评估脚本。

链接地址: http://www.djcxy.com/p/71899.html

上一篇: Replace HTML page with contents retrieved via AJAX

下一篇: Allow only one flask request for a particular route