gpt4 book ai didi

java - 在 spring mvc 中使用ajax将列表数据绑定(bind)到模型

转载 作者:太空宇宙 更新时间:2023-11-04 12:43:40 24 4
gpt4 key购买 nike

我有一个场景,我想使用 ajax 将数据绑定(bind)到 spring 中的模型类

模型类:EmployeeBean

private List<FamilyBean> familyDetails;
private String name;
//Getters and setters

FamilyBean 类位于此处:

private String memberId;
private String empUserId;
private String relationship;
private String memberName;
private String age;
private String occupation;
private String contact;
private String isIncludeMedIns;
private String modefiedBy;
private String modifiedOn;
//Getters and Setters

JSP:

<input type="text" name="familyDetails[0].relationship" value="A">
<input type="text" name="familyDetails[0].memberName" value="B">
<input type="text" name="familyDetails[0].age" value="C">
<input type="button" value="Previous" name="_target1" id="previous">

Ajax 调用:

$("#previous").click(function(){            
$.ajax({
type: "POST",
url:"saveTempEmployeeData",
data:$("#formData").serialize(),//formData is id of the form
success:function (map) {
//alert("SUCCESS");
},
error:function (xhr) {
//alert(xhr.statusText+" ERROR");
}
});
});

Spring Controller :

@RequestMapping(value="/saveTempEmployeeData", method=RequestMethod.POST, headers="Accept=*")
public @ResponseBody void saveTempEmployeeData(HttpServletRequest request, HttpServletResponse response, @ModelAttribute("employeeBean")EmployeeBean employeeBean, ModelMap map) throws Exception{

userService.saveTempEmployeeData(employeeBean, pageNumber);

try{
System.out.println("In controller");

}
catch(Exception e){

}
response.setContentType("application/json");
response.setCharacterEncoding("ISO-8859-1");
response.getWriter().write(new Gson().toJson(map));

}

数据未绑定(bind)到 Controller 中的模型属性。

有什么办法吗?

注意:<input type="text" name="name" value="Sunny">

此数据正在绑定(bind)到模型。

最佳答案

我认为您应该在 JSP 中命名输入控件,如下所示:

<input type="text" name="employeeBean.familyDetails[0].relationship" value="A">
<input type="text" name="employeeBean.familyDetails[0].memberName" value="B">
<input type="text" name="employeeBean.familyDetails[0].age" value="C">

这样 Spring 就会知道它必须在 employeeBean 内填充 familyDetails

关于java - 在 spring mvc 中使用ajax将列表数据绑定(bind)到模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36564698/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com