在使用springmvc的时候,有时候我们需要form能提交多个对象,比如我们要上火车,一个用户需要一张票,在设计的时候用户类里面有一个属性是票务(Tickets),在form表单提交的时候需要同时提交用户信息和票务信息,我试验了几次,发现了一种解决办法,这个办法应该是spring设计人员已经考虑了的
form.jsp:
<form:form modelAttribute=”userInfo,tickets”action=”enter” method=”post” id=”enterForm”>
<label for=”phone”>手机号:</label>
<input type=”text” name=”userInfo.phone” id=”phone” value=”” />
<label for=”trainNumber”>车次:</label>
<input type=”text” name=“tickets.trainNumber” id=”trainNumber” value=”” />
</form:form>
——————————————————————————————————————————————————–
FormController.java
@RequestMapping(value=”/”,method=RequestMethod.GET)
public ModelAndView setForm(Model model){
model.addAttribute(“userInfo”,new UserInfo());
model.addAttribute(“tickets”,new Tickets());
return new ModelAndView(“index”);
}
@RequestMapping(value=”/enter”,method=RequestMethod.POST)
public ModelAndView enter(@ModelAttribute(“userInfo”) UserInfo userInfo,@ModelAttribute(“tickets”) Tickets tickets){
userInfo.setTickets(tickets);
return new ModelAndView(“main”);
}
通过这种方式就可以达到提交多个form的目的。
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/11213.html