当我使用 jQuery.post 进行调用时,回调不会被执行,但前提是调用是在加载到网页中的 js 文件中进行的。如果我将相同的调用复制并粘贴到浏览器的 JavaScript 控制台中,则会执行回调 get。我知道该函数正在被调用,因为如果我用一个简单的alert() 替换对 jQuery.post 的调用,它就会显示出来。我已确保发布请求已完成(数据已插入服务器端的数据库中)。我还确保它返回的是 200 代码。
此外,当我单击按钮时会按需调用此函数,因此此时 DOM 应该已完全加载。
为什么可以从控制台正确执行,但不能从 js 文件正确执行?
最佳答案
问题最终是我没有从 onclick 回调中返回 false,因此每次提交表单时页面都会刷新。刷新发生得如此之快,以至于我没有注意到。如果我将提交按钮移出表单,或者从 onclick 回调返回 false,则会发生预期的行为。
关于javascript - jQuery.post 回调未执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4161238/