第一次使用ajax,下面帖代码
$.ajax({ url:"/loanBook", type : "POST", dataType: "text", data : {name:"哈哈",cs:"测试"}, success: function(data){ alert("请求成功") }, });下面是控制器代码
@RequestMapping(value="/loanBook") @ResponseBody public String loanBook(String name,String cs)throws Exception { System.out.println("传过来的参数=" + name + cs); return "SUCCESS"; }前面接受不到返回参数,success这个方法没有走是因为我之前dataType:json,这个是指返回参数的类型,因为控制器中返回是String,所以修改成text,最后获得了返回参数,再此记录一下
dataType: "text",
到这一步还有一个问题,中文返回乱码!!这个是因为@ResponseBody注解把返回值直接写到HTTP response body里,spring注解的默认编码是iso-8859-1,我的工程编码和页面都是utf-8,所以导致乱码解决方法就是在SpringMVC的配置文件内加上如下代码即可
<!-- 启动Spring MVC的注解功能,完成请求和注解POJO的映射 --> <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" > <property name="messageConverters"> <list> <bean class = "org.springframework.http.converter.StringHttpMessageConverter"> <property name = "supportedMediaTypes"> <list> <value>text/html;charset=UTF-8</value> </list> </property> </bean> </list> </property> </bean>