
我的经验:
服务器端返回的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') { //判断当前页面是不是登录页面(如果你的登录可能是d窗方式,也可能是单独页面的时候才需要)
location.reload()
return true
} else {
res.url = '/'//设置一个默认地址
}
}
location = res.url
}
}
sx/ajax提交成功后采用以下方式跳转:
1、本页面跳转:"window.location.href"、"location.href"
2、上一层页面跳转:"parent.location.href"
3、最外层的页面跳转:"top.location.href"
@RequestMapping(value="searchUser")
publicvoidsearchHome(HttpServletResponseresponse){
Stringresult=null
...
...
if(查询成功){
result=JsonUtil.objectToJson(查询结果对象)//结果对象转化成Json字符串,在ajax的结果中跳转到用户详情的处理方法
AjaxUtil.ajax(response,result)
}else{//查询失败,返回提示信息
AjaxUtil.error(response,"查询用户失败")
}
}
扩展资料jsp页面的ajax:
此处的重点在于如何在ajax的回调函数中调用普通方法,并将之前查询出的用户数据传到普通方法中(上面伪代码中红色的部分),继而跳转到用户详情页面。
在body中写隐藏的form表单,在回调函数中把查到的用户数据复制给form表单中的input,然后提交表单跳转到普通方法中,这样就是以post方法提交的数据,并且可以跳转到新页面。
循环可以使用:each方法data.goodList.each(function(i,_this){
//在这里拼接
})
还有一种方法使用template.js
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)