PHP/JQuery - 将页面重定向到 AJAX 请求

PHP/JQuery - Redirect page into an AJAX request

我在我的网站上设计了一个通过 AJAX 请求运行的论坛,因此 URL 根本没有改变。您单击一个按钮,AJAX 请求一个 PHP 文件,响应更新客户端。这对我有用 - 但是,我需要知道是否可以在提交表单后通过一系列 AJAX 请求重定向用户。

  1. 用户进入forum.php页面
  2. 用户点击主题按钮(AJAX 请求加载线程)
  3. 用户点击话题标题(AJAX 请求加载回复)
  4. 用户点击回复按钮(AJAX 请求加载文本编辑器)
  5. 用户点击提交(AJAX 请求提交表单)

此时我想将用户重定向回该特定线程 - 因此我相信他们需要通过一系列 AJAX 请求进行引导。这可能吗?

额外:另外,如果您认为此论坛流程效率不高,请告诉我您的意见。

看来你有几个选择:

  1. 继续使用Ajax提交,所以不需要重定向。 (编辑:听起来你已经在这样做了,所以问题可能是你放弃了你想要显示的内容,而不是暂时隐藏它)
  2. 实现一种将页面直接加载到论坛的方法。这将是对 ajax 调用的补充。您将跟踪论坛 ID,将其包含在 $_POST 参数中,并让服务器重定向到适当的 URL.
  3. 生成 javascript(或为您的固定 javascript 使用适当的 fields/data),这将导致页面在重新加载时自动进行必要的 AJAX 调用.
  4. 跳过Ajax,只对所有内容使用整页加载

混合使用,有时使用 Ajax 有时使用页面加载并不理想,但有时很难完全避免。

请记住当用户在浏览器中点击后退按钮或历史记录时会发生什么。您是否希望他们在回击时离开您的应用程序?他们最终可能会在一个奇怪的地方混合 ajax/page 负载。为此,人们赞成(4)

(2) 可能工作量很大。

(1) 没问题,返回按钮将始终将用户带回其他网站。就个人而言,这不会打扰我。

(3) 会很痛苦而且很慢,然后你会得到非常奇怪的 forward/back 行为。避免。

(4) 可能是最好的。