目前我在我的网站上使用 iframe 来显示来自其他页面的内容,如表单。我遇到的问题是在登录页面上,当用户使用 iframe 中的表单登录时,它只会在登录 iframe 中显示下一页 - 这是完全没用的。
我听说 AJAX 对于这样的事情更加灵活和动态,但我不知道如何使用它,我查看了一些教程,但在显示页面中似乎并没有那么远页。
如何用 AJAX 替换我的 iframe?
预先感谢 :)
由于您不会使用 iFrame,因此您需要一个容器来放入您的页面。使用 AJAX,通常的做法是使用一个<div>
元素来保存该数据。此外,jQuery 或其他支持 AJAX 的 Javascript 库将通过工作测试代码让您的生活更轻松,这样您就可以专注于您的业务逻辑而不是细节。因此,在您的 HTML 中,您将需要一个容器元素:
<div id="otherpage"></div>
然后在一个包含的 javascript 文件中,您可以使用这个 jQuery:
$(document).ready(function() {
$('#otherpage').load('otherpage.html', function() {
alert('Load was performed.');
});
});
当然,在使用它之前,请确保您也包含 jQuery。本教程应该可以帮助您开始使用 jQuery。
您面临的问题与 ajax 的关系比其他任何事情都多。
尝试在主机 html 中“预加载”您的 js 函数(不是通过 ajax 加载的函数),然后通过 ajax 加载特定的渲染 html。
然后,使用 jquery ".done( function(data) { ... " 方法调用您“预加载” << (包含在基本 html/文档中)的 js 函数,一旦它们准备就绪。
希望这有帮助,问候。
尝试这样的事情:
$(文档).ready(函数(){ $.ajax( 网址:'./your_script.php', 上下文:'文档', ).done(函数(数据){ $('#your_div').html( 数据 ); your_js_function(); }) }); // ---- 主html 函数 your_js_function(){ alert('知道了!'); };