jquery - ajax 调用后如何获取 alert(true)?
问题描述
你好吗?这只是 html、css、jquery 项目,不是 node.js 项目。
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
$(document).ready(function () {
var flag = false;
$("button").click(function () {
document.getElementById("myText").value = "Johnny Bravo";
setTimeout(function() {
$.ajax({
async: false,
url: "demo_test.txt",
success: function (result) {
$("#div1").html(result);
flag = true;
}
});
}, 3000)
alert(flag);
});
});
</script>
</head>
<body>
<button>Get External Content</button>
<input type="text" id="myText" value="Mickey">
<div id="div2">
<h3>My text area.</h3>
</div>
<div id="div1">
<h2>Let jQuery AJAX Change This Text</h2>
</div>
</body>
</html>
我尝试使用同步调用 ajax,所以我使用了async: false
. ajax 调用后如何获取 alert(true)?请在这个领域帮助我。谢谢你。
解决方案
您可以使用.ajaxComplete()在 ajax 请求完成时执行一些代码。
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
$(document).ready(function () {
var flag = false;
$(document).ajaxComplete(function(){
alert(flag)
})
$("button").click(function () {
document.getElementById("myText").value = "Johnny Bravo";
setTimeout(function() {
$.ajax({
url: "https://jsonplaceholder.typicode.com/users/1",
success: function (result) {
$("#div1").html(result.name);
flag = true;
}
});
}, 3000)
});
});
</script>
</head>
<body>
<button>Get External Content</button>
<input type="text" id="myText" value="Mickey">
<div id="div2">
<h3>My text area.</h3>
</div>
<div id="div1">
<h2>Let jQuery AJAX Change This Text</h2>
</div>
</body>
</html>
推荐阅读
- c# - 在 ASP.NET MVC 项目中记录 DML 操作
- python - Python将用户指定的天/月/年添加到今天
- python - 为什么django将我提交的数据作为HttpResponse返回?
- html - 如何使 Bootstrap 图像四舍五入?
- javascript - 'position:absolute' 是否总是 'display:block'
- html - 右侧的主按钮首先获得焦点是不是很烦人?
- azure-devops - Azure DevOps 服务器导入管道功能忽略审批者定义
- python - Azure Python SDK 是否没有用于预配存储帐户的 create_or_update?
- python - 带有 zeep 的 xsd:string[] 的 SOAP 字符串列表
- php - 如何在这个 css 字符串中生成随机数(laravel)