1

长话短说

得到执行 5 个 ajax 步骤的 javascript 代码。

第二步和第三步涉及文件上传。有进度条。

不确定如何在 5 个步骤中逐步更新进度条。

很长的故事

该演示位于http://ajaxprogressbar.cloudcontrolled.com/ajaxprogress.html

要执行它,请按“运行进度条”按钮

代码在github上可用

基本上,ajax 过程有 5 个步骤。

step1、4、5分别向step1.php、step4.php、step5.php发送数据。

step2 和 step3 是 ajax 文件上传步骤。

顺序应该是:

  • 只有在第 1 步完成后,才能同时执行第 2 步和第 3 步。
  • 步骤 4 只能在步骤 2 之后执行。
  • 步骤 5 只能在前面的所有步骤都成功后执行。
  • 如果在任何步骤中出现任何错误,则应停止该过程。

我想要完成的

  1. 只有在第 1 步完成后,才能同时执行第 2 步和第 3 步。(完毕)
  2. 步骤 4 只能在步骤 2 之后执行。(完成)
  3. 步骤 5 只能在前面的所有步骤都成功后执行。
  4. 如果在任何步骤中出现任何错误,则应停止该过程。
  5. 每一步后更新进度条 20% (完成)
  6. 在第 2 步和第 3 步期间,一次更新进度条 1%。(完成)见此
  7. 重构executeProcess以使用Q.js而不是jquery

请注意,那些标记(完成)已完成。请在此处查看演示。

我尝试并得到的结果

我需要的

我想在不破坏其他任何东西的情况下完成 R3、R4、 R6和 R7。

R6 是最重要的。

R3 现在是最重要的。

常见问题

  1. 这是您的完整应用程序吗?

不。我做了一个简化的测试用例,我去掉了尽可能多的不必要的代码来解释我的问题,而不会影响问题陈述。

因此,似乎缺少一些逻辑。但请放心作为演示,没有错误。我已经测试过了。

sleep(5)我还通过输入fileupload.php来模拟文件上传的时间延迟

如果我在这里或其他地方找到解决方案我会怎么做

我会将解决方案作为演示工作并将其放到网上。

这也是为了帮助其他人从我的问题中学习。

4

0 回答 0