今天在使用ajax传参时碰到了后台接收参数为null的问题,ajax格式如下
$.ajax({ type: "POST", url: "/displayitem", data: { "number":number }, Traditional:false, dataType: "json", success:function (data) {//成功后返回的数据 console.log(data); }, error:function (data) {//失败后返回的数据 console.log(data); } });View Code
@RequestMapping("/displayitem") @ResponseBody public String displayItem(String data){ System.out.println(data); if (Integer.parseInt(data) == 1){ return "是1是1"; }else { return "不是1不是1"; } }View Code
然后就发生了data一直为空的问题。仔细检查后发现,ajax传参用的参数名是number,而我后台接收的参数名称是data,名字不相同就无法自动匹配了,所以解决方案是要么写成 public String displayItem(@RequestParam("number") String data) ,要么就写成 public String displayItem(String number) 。
这个问题开始很基础的,只要再多细心一点就可以避免了。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。