【问题标题】:Show ajax steps with messages显示带有消息的 ajax 步骤
【发布时间】:2026-01-20 10:25:01
【问题描述】:

我想知道是否可以通过来自 php 脚本的消息显示 ajax 进度?

例如,我的 backend.php 有 3 个步骤。当我点击我的按钮时,我想要:

  • 显示:“加载第 1 步”
  • 当我的 backend.php 前进到第 2 步时,显示:'正在加载第 2 步'
  • 当我的 bakcend.php 前进到第 3 步时,显示:'正在加载第 3 步'

目前我只能通过多个 ajax 调用来做这样的事情,当 ajax 1 完成时,我的警报更改并启动 ajax 2....

我想可能有更好的方法来做到这一点?

感谢您的帮助。

【问题讨论】:

  • 有多个选项,对您来说最简单的可能是将结果存储在一个文件中,并使用一个 ajax 请求读取文件内容。如果您的后端脚本正在处理,请更新文件,同时前端脚本将读取文件并获取新值。
  • 可能是一个递归函数,会调用你的后端。
  • 如果你想单独调用每一步,你可以听每一步结束,更新ui然后进行下一次调用等等。如果您想通过一个电话(一种)来做到这一点,请考虑使用websocket。像这样:*.com/q/39768548/863110

标签: php jquery ajax


【解决方案1】:

我终于设法做一些适合我的事情。

当我更改步骤或出错时,我使用服务器发送事件 (SSE) 从服务器获取消息。

由于我只使用一个文件作为服务器部分,我设法使用 sql 事务。

为了使用来自我的发布数据,我使用 ajax,将这些数据存储在 php 会话中。如果 ajax 返回成功,那么我启动 SSE,否则我停止一切。

【讨论】: