![](/img/trans.png)
[英]How to send values and image form javascript to controller in spring MVC
[英]How to send a javascript array to Spring MVC controller
我正在尝试向 Spring MVC 控制器发送一个 javascript 数组..但我得到了空值..
我的 javascript 代码:
for (var n = 1; n < rowCount; n++) {
cells = rows[n].cells;
data.push([
cells[0].firstElementChild.checked,
cells[1].firstElementChild.value,
cells[2].firstElementChild.value,
cells[3].firstElementChild.value,
cells[4].firstElementChild.value
]);
}
$.ajax({
url: 'addDetails.html',
type:"POST",
data:
{promo : data}
我的 Spring MVC 控制器请求映射:
@RequestMapping("/addDetails")
public @ResponseBody void addEntity(
@RequestParam(value="promo") List<String> promo) throws IOException {
我在 Requestmapping for promo 中没有得到任何价值。请帮助我..谢谢!
POST Body 可以在RequestBody
而不是在RequestParam
接收,其次,如果您像{promo: data}
这样传递数组,它将被转换为HashMap
或某些POJO
对象而不是数组列表,因此直接传递数组,如:
$.ajax({
url: 'addDetails.html',
type:"POST",
data:data
并使您的控制器像:
@RequestMapping("/addDetails", method = {RequestMethod.POST})
public @ResponseBody void addEntity(
@RequestBody List<String> promo) throws IOException {
更新更多数据,您可以创建一个 POJO 类:
public class MyData{
private String lname;
private String lstate;
private String lrta;
private String lse;
private List<String> promo;
... Getters and Setters
}
你的控制器应该是:
@RequestMapping("/addDetails", method = {RequestMethod.POST})
public @ResponseBody void addEntity(
@RequestBody MyData myData) throws IOException {
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.