【发布时间】:2012-03-12 20:56:02
【问题描述】:
我正在使用 jquery 构建一个注册表单,它应该通过 Ajax 处理请求。 我的代码:
$.ajax(
{
type: "POST",
url: "http://www.example.com/register.php",
data: $("#register-form").serialize(),
cache: false,
success: function(message)
{
$("#reg_notification").html(message).fadeIn(400);
}
});
现在,如果电子邮件地址无效,则 register.php 应该输出错误,并将其放入 div reg_notification 中。如果没有出现错误,则应将用户重定向到“欢迎页面”。但重要的是这个页面并不总是静态的,所以换句话说,我不能在 jquery 代码中使用 location.href 但想使用
header("Location: http://www.example.com")
在 PHP 中。问题是用户不会被重定向,但www.example.com 的内容将被放入 div reg_notification 中。
我在这里发现了一个类似的问题:How to manage a redirect request after a jQuery Ajax call,但不同之处在于他们使用的是 json,由于我的服务器,我无法使用它,而且它们也在 javascript 内部而不是 php 文件中重定向。
【问题讨论】:
-
您不能在 PHP 文件中重定向并期望浏览器也重定向。您可以将整个页面替换为请求的结果。
-
你有一个网站的例子可以满足你的要求吗?
-
@phpheini 当然,看看你链接的问题。
-
@AdrianLynch 是的,例如twitter.com/signup。至少我希望它是这样工作的,但我不确定他们使用的是什么方法。