gpt4 book ai didi

jquery - 如何触发ajaxStart和ajaxStop

转载 作者:行者123 更新时间:2023-12-01 07:22:18 25 4
gpt4 key购买 nike

我正在尝试触发 ajaxStart 和 ajaxStop 事件以显示正在加载消息,但我对如何执行此操作感到非常困惑。据我了解,这些事件是由每个 ajax 事件触发的,但我仍然不确定这到底意味着什么。单击 href 链接或提交按钮是否也会触发 ajax 事件?似乎不是,因为单击超链接或按钮时,下面的代码中没有出现任何警报。我刚刚开始学习 JQuery,可能明显缺少一些东西。

有人可以解释一下如何做到这一点吗?

我的<head>中有这个标签

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js" type="text/javascript"></script>

这是在开幕之前<body>标签:

<script language="JavaScript" type="text/javascript">

// prepare the form when the DOM is ready
$(document).ready(function() {
$(document).ajaxStart(function() {
alert('ajaxStart');
$('#ajaxBusy').show();
});
$(document).ajaxStop(function() {
alert('ajaxStop');
$('#ajaxBusy').hide();
});

</script>

编辑:我想通过单击 href 链接来显示加载弹出窗口,从而触发 ajaxStart 事件。链接调用的另一个页面需要相当长的时间才能加载,我希望同时显示加载消息。

<a href="http://www.mysite.com/long-loading-page.php">link</a> 

我如何通过 ajax 事件来做到这一点?

最佳答案

要触发 AJAX 事件,您必须启动 AJAX 请求

这意味着$.ajax$.get$.post$.load等.

单击链接或按钮不起作用。但是,您可以为每个 a 元素注册自己的 click 处理程序,以便它使用 $.load 检索请求的 URL,然后更新 DOM有了新的内容。不过,这绝对算不上“初学者的 jQuery”。

更好的解决方案可能是让页面使用document.write或类似的方法在页面加载时弹出弹出窗口,然后在完成后将其删除。

关于jquery - 如何触发ajaxStart和ajaxStop,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12513276/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com