javaweb局部刷新-ajax异步请求springMVC显示返回的jsp内容,代替iframe
在jsp上要引入jquery
<script src="<%=request.getContextPath()%>/js/jquery_ui/jquery.js"></script>
在js中发起请求
function get(p) { var patch="show"+p; $.ajax({ //这是$.ajax()方法 type:"POST", url:patch, //路径可以用相对路径,起点以此方法所在的jsp显示的路径为准 data: $('#myform').serialize(),//ajax提交表单 dataType:"html",//接受响应的数据类型,我的响应是一个页面,所以这里用“html” success:function(data){ $('#mydiv').html(data);//我把响应的页面被放到一个div中显示 } }) }
myform是jsp中的一个form标签的id,mydiv是一个div的id,ajax要显示的jsp的位置就在这个div的中间,记得要在jsp加上这两个
<form id="myform" method="post" > <input id="hidden" name="id" type="hidden" value=${id} > </form> <div id="mydiv"> </div>
myform正常发起一个springMVc请求,controller正常返回到一个jsp
以下这步我没做,但正常显示了.
在Controller的接受路径的方法上加上 @ResponseBody注释
@ResponseBody//作用是将返回的对象作为响应,发送给页面 @RequestMapping( "/showAJ" ) public String toIndex( String id, Model model ) { return "AJ"; }