【问题标题】:jquery replace full document content [duplicate]jquery替换完整文档内容[重复]
【发布时间】:2014-02-21 08:01:11
【问题描述】:

我有一个 ajax 响应,它返回网页的完整 html,如下所示:

<!DOCTYPE>
<html>
  <head>
    <!-- head content -->
  </head>
  <body>
    <!-- body content -->
  </body>
</html>

所以我希望所有这些都在 ajax 调用之后替换我的调用页面的文档。 我该怎么做?

【问题讨论】:

  • 我无法让它工作。该主题中的解决方案不会替换我的 HTML。

标签: javascript jquery ajax


【解决方案1】:

试试这个

 $('html').replaceWith(myString);

【讨论】:

  • 请注意,这也会替换 jQuery 对象,因此如果您保留引用,则需要更新它们。礼貌@Aram Kocharyan
【解决方案2】:

使用:

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

你也可以试试:

    var startHead = myString.indexOf("<head>");
    var endHead = myString.indexOf("</head>");        
    var headString = myString.substring(startHead+6,endHead);

    var startBody = myString.indexOf("<body>");
    var endBody = myString.indexOf("</body>");
    var bodyString = myString.substring(startBody+6,endBody);

    jQuery('head').html(headString);
    jQuery('body').html(bodyString);

【讨论】:

    【解决方案3】:

    我有一个 ajax 响应,它返回网页的完整 html

    如果是这样,为什么不直接重定向到该页面?

    window.location.href = your_url;
    

    【讨论】:

      【解决方案4】:

      试试

      document.write(xmlhttp.responseText); // using AJAX
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-07-04
        • 1970-01-01
        • 2014-09-26
        • 2016-11-19
        • 2011-01-30
        • 1970-01-01
        • 2014-05-13
        • 2019-06-15
        相关资源
        最近更新 更多