var id = 1;
$.ajax({
url:"deleteDevice",
data:{
id:id,
},
type:"post",
success:function(data){},
error:function(){},
complete:function(){}
});
上面是$.ajax()传值正确的写法。
$.ajax()的参数data,是发送到服务器的数据,类型为String,必须为 Key/Value 格式。
上面代码中的"data:{id:id,}",左边的"id"指的是key,右边的"id"是value。即:id:1
"data:{id:id,}"和"data:{id:1,}"是一样的。
下面是错误写法:
data:id,
如果这样写,那么后台收到的值会是null。
在SSM中,参数data中的key(即上面代码中左边的"id")对应Controller方法的参数。如果两者不一致,后台取前台传过来的值会是null。此时可以通过@RequestParam注解来解决。
例如:
jquery中:
$.ajax({
url:"deleteDevice",
data:{
id:1,
},
type:"post",
success:function(data){},
error:function(){},
complete:function(){}
});
Controller中:
@RequestMapping("/deleteDevice")
@ResponseBody
public boolean deleteDevice(@RequestParam(value="id") String name){
System.out.println("name::"+name); //此时name的值为前台中id对应的值
return true;
}
有关更多@RequestParam注解 可以参考https://wwwblogs/zeroingToOne/p/8992746.html
$.ajax() 可以参考http://www.w3school/jquery/ajax_ajax.asp
更多推荐
$.ajax()传值后台null
发布评论