繁体   English   中英

使用AJAX使用纯Java脚本加载HTML页面

[英]Loading a html page with pure Javascript using AJAX

有一个主页,并且该页面上有链接。 单击各个链接时,应该将链接加载的内容加载到主页的div标签中。

示例:MainPage.htm

<html> ... 
    <body> ... 
        <div id="MainContent"> </div> ... 
        <a href='Link1.htm'>Link 1 </a>
    ... 
</html>

链接1.htm

<script src="main.js">...
<div> other contents here </div>

当用户单击链接1时,浏览器不会转到该页面,而是使用AJAX来获取该链接的文档并加载到#MainContent

但是,问题在于链接的页面有一个表,并且在第一次加载时有一些表操作代码需要运行。 实际上,链接的文档具有指向单独脚本的链接以及应该在window.onload上运行的某些功能。

当我简单地使用AJAX加载该链接文档时,我正在使用以下方法:

MainContent.innerHTML = XHR.responseText;

这无助于在链接的文档上运行window.onload代码。

有没有针对此类问题的解决方案或解决方法?

仅作一点说明:我只是在使用Javascript,没有其​​他API,例如angular或jQuery或类似的API。

您的方法有问题。 这里的主要问题是,由于window.onload已经完成,因此将不会执行通过ajax获取的新内容的上下文。

当您引用“表操作代码”时,我假设在将内容正确添加到html之后,需要执行几个javascript函数,因此您可以在此处尝试将这些“操作”移至单独的位置js文件并将其包含在index.html中,并在通过ajax获取内容后在成功回调中执行适当的功能。

我认为这应该是更准确的方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM