如果php返回位置头,我如何在jquery ajax中定位页面
How I can locate page in jquery ajax if php return location header?
我用jquery ajax发送一个表单,如下所示:
$("#login").submit(function(e) {
e.preventDefault();
var url = "login";
$.ajax({
url:url,
type:'POST',
data:$(this).serialize(),
success:function(result){
$("#response").text(result)
});});
如果登录成功,我想定位页面。这是我的php条件:
if(islogin())
header("Location:".$home_url."home");
}
else{
echo "Oops! Something is wrong!";
}
如何更改jquery脚本以定位页面?谢谢
使用更改ajax成功声明
success: function(data, status, xhr) {
console.log(xhr.getResponseHeader('Location'));
}
所以你的完整脚本是:
$("#login").submit(function(e) {
e.preventDefault();
var url = "login";
$.ajax({
url:url,
type:'POST',
data:$(this).serialize(),
success: function(data, status, xhr) {
console.log(xhr.getResponseHeader('Location'));
}
});});
您的php脚本将更改为:
<?php
header("Access-Control-Expose-Headers: Location");
if(islogin())
echo $home_url."home";
}
else{
echo "Oops! Something is wrong!";
}
?>
试试这个:
JS-
$("#login").submit(function(e) {
e.preventDefault();
var url = "login";
$.ajax({
url:url,
type:'POST',
data:$(this).serialize(),
success:function(result){
if (result.indexOf('Oops') !=-1) {
$("#response").text(result)
} else {
window.location.href = result;
}
});
});
PHP
if(islogin())
echo $home_url."home";
}
else{
echo "Oops! Something is wrong!";
}
如果更改页面,为什么要使用Ajax?
如果你仍然想,回显实际的新位置,而不是设置标题并进行
success:function(result){
if (result.indexOf("Oops") !=-1) $("#response").text(result);
else location.replace(result);
});
相关文章:
- 在FrontEndphp-ajax-jquery中验证reCaptcha-google
- AJAX jquery json将数组发送到php
- 如何使用Ajax/jQuery设置cookie
- PHP/Ajax/jquery/JON-在Ajax Post之后将echo文本中的一部分作为变量返回
- 如何使用Ajax JQuery.ech()获取JSON值
- 使用springform时,如何在ajax/jquery中获取复选框值
- JSP AJAX jQuery填充表问题
- Piping Value: Ajax + JQuery
- 使用javascript Without Ajax/Jquery在特定行中启用文本框
- 在AJAX jQuery加载()之后运行jQuery代码
- 具有动态更新的实时标题 (AJAX+jQuery)
- ajax/jQuery Youtube 播放列表推送
- AJAX jQuery Avatar Uploading
- 全局变量 - AJAX jQuery
- Ajax jquery mysqli update
- 获取剩余时间和上传文件速度 - ajax jquery/js
- 使用ajax/jquery绑定Json数据
- TypeError Obj.root是未定义的ajax jquery
- 当数据类型为XML时,如何将url参数传递给AJAX jquery
- 在ajax Jquery之后无法获取隐藏字段的值