微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

一个ajax传参为null的问题

  今天在使用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] 举报,一经查实,本站将立刻删除。

相关推荐