我正在使用jquery ajax plugin
提交表单。
$('#profile-form').ajaxForm({
success:function(response, statusText, xhr, $form){
console.log(statusText,response,xhr);
},
beforeSubmit : function(formData, jqForm, options){
if ($('#permissions').data("permissionsModified") == true){
formData.push({name : 'selectedPermissions', value : JSON.stringify($('#permissions').data('selected'))});
}
}
});
服务器发回重定向请求,并在firebug控制台上显示以下内容:
302暂时移动
在表单的动作网址前面。 在此之后,会立即显示重定向网址,并且'请求正在进行中'从中继续旋转的符号。在ajaxform的成功回调中, statusText 是"成功"响应文本是整个新的重定向页面。如何检查服务器是否已重定向所请求的(然后,如何在浏览器上显示重定向的页面)或者是否有来自服务器的json reposnse
答案 0 :(得分:1)
如果我没记错的话,浏览器应该默默地(透明地)遵循通过AJAX请求发出的任何重定向。
经过一番挖掘,看来我是对的,见第2点:http://www.w3.org/TR/XMLHttpRequest/#same-origin-request-event-rules
我能想到的唯一解决方案是自定义状态代码,但这种范式有点拉伸范式。不幸的是,没有别的办法可以做到。