
正文
jquery中ajax页面跳转的简单介绍
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
jQuery 里面的 ajax 频繁调用会出现问题 。
这种情况是你在ajax请求未完成的时候就跳转页面了。在页面跳转的时候,ajax会被取消。所以如果你要跳转,最好等ajax完成后再动作。
相关问答
Q1: jquery.ajax具体是如何操作的,用jq.ajax()跳转过去的页面是怎么在后台执行前面的请求回到前一个页面的?
既然你懂的大概流程,直接上代码可能会快些。
前台页面
script language="JavaScript"
$(document).ready(function () {
$.ajax({
type : "POST",
cache :false,
data : {"name":"Jack"},
async : false,
url : '/Touches/ajaxTest',
dataType: 'json',
success : function(rtn) {
$("#111").html(rtn);
alert(document.getElementById("222").innerHTML);
//这里就是返回的效果,输出Hello Jack!
},
error : function(XMLHttpRequest, textStatus, errorThrown) {
alert('通信失败:' + errorThrown);
}
});
});
/script
div id="111"/div
后台处理
//我用的是cakephp框架
public function ajaxTest() {
$p = $this-request-data;
$rtn = 'div id="222"Hello ' . $p["name"] . '!/div';
return new CakeResponse(array('body' = json_encode($rtn)));
}
Q2: jQuery+ajax登陆时怎么在html跳转页面
我的经验:
服务器端返回的json数据必须包含以下内容的部分内容
success: true/false 是否成功
message: string 如果失败,失败原因是什么
url: string 需要跳转的页面地址
而你的ajax中应该做以下判定及类似的处理
success: function(res) {
if (! res.success) {
alert(res.message);
} else {
if (! res.url) { //如果未返回目标地址
if (location.href!='/user/login') { //判断当前页面是不是登录页面(如果你的登录可能是弹窗方式,也可能是单独页面的时候才需要)
location.reload();
return true;
} else {
res.url = '/';//设置一个默认地址
}
}
location = res.url;
}
}
jquery中ajax页面跳转的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、jquery中ajax页面跳转的信息别忘了在本站进行查找喔。







