问题:springboot提供的return modelandview可以非常简便的返回到指定页面并附带各种参数。但是使用Ajax发送请求时,虽然可以到达@requestMapping指示的方法,但是无法通过返回modelAndView的办法跳转页面。。
通过查找资料后得知,这是因为ajax发送的请求得到的数据被视为http数据,无法解析modelAndView进而不能跳转页面。通过在后端加@ResponseBody的方法,可以在前端ajax请求的success函数中用data得到数据,但是仍然无法跳转。
【解决办法一】(部分解决)
后端加了@ResponseBody之后,把返回值设为modelAndVIew,可以正确将指定页面的html文本返回,这时使用jquery的.html()方法可以以html文件类型加载出modelAndView中指示的页面(类似include)。但这种方法无法方便的实现后端向前端传递各种flag信息。