javascript - AJAX-altering JS 在函数完成后在事件函数内提供 JS 变量
问题描述
我有以下 PHP 文件,我将$.ajax()
在我的 JS 中使用 my 调用:
<?php
header('Content-Type: application/json');
echo json_encode(array('One' => 'Test'));
?>
我的 JS 中有以下代码:
<script type = "text/javascript">
let changeValue;
$('#someElementID').click(function() {
$.ajax({
type: 'POST',
url : 'phpfile.php',
dataType : 'json',
success: function(obj, textStatus) {
changeValue = obj.One;
}
});
$('#toBeChangedElementValue').text(changeValue);
}
</script>
问题是:changeValue
变量只有在 my$('#toBeChangedElementValue').text()
被执行后才获得它的值。它是如何工作的?我该如何解决?我不得不将其放入$('#toBeChangedElementValue').text(changeValue)
我的成功回调中以使其正常工作。为什么我没有changeValue
在决赛发生之前先得到更新.text()
?
解决方案
推荐阅读
- c# - 读取和复制大文件/blob,而不将它们存储在 C# 的内存流中
- jboss - 如何从 Wildfly 10 Web 控制台下载 EAR 文件
- flutter - 如何在没有 screenshot_callback 的情况下检测用户截图
- android - Flutter 构建崩溃
- url - 一遍又一遍地发送请求,直到我在邮递员的响应正文中获得预期值
- javascript - 按键事件在 JavaScript 中只工作一次
- php - 使用 nginx 和 php-fpm 在 Docker 上找不到 php-fpm www.sock 文件
- python - 如何使 SHAP 的 DeepExplainer 与 deepctr 库一起使用
- javascript - API 请求在 react-app 中使用 redux-saga 失败
- php - 允许用户在 PHP 中使用一些静态值创建自定义段落