获取表单数据是Web应用程序中最常见的任务之一。SpringMVC在处理表单数据方面提供了许多便捷的方法,包括获取单选框和复选框的值。
获取表单数据是Web应用程序中最常见的任务之一。SpringMVC在处理表单数据方面提供了许多便捷的方法,包括获取单选框和复选框的值。
获取单选框的值
客户端可以在多个单选按钮之间进行选择。一组单选按钮被视为一组,必须具有相同的名称。SpringMVC在控制器中提供了几种方法来获取选定的单选按钮值。下面是两条示例说明:
示例1:使用@RequestParam接收单选框的值
可以使用@RequestParam注解,将前端表单提交的单选框的值绑定到控制器方法的参数上,示例代码如下:
@RequestMapping("/radio")
public String getRadio(@RequestParam("radioBtn")String radioBtn,Model model){
model.addAttribute("result", "你选择的是:"+radioBtn);
return "result";
}
RequestParam注解中的参数"radioBtn"就是前端表单对应的字段名称,这里获取到的是单选框的value值。
示例2:使用ModelAttribute注解获取单选框的值
另一种方法是使用ModelAttribute注解,示例代码如下所示:
@ModelAttribute("radioBtn")
public String getRadio(){
return "defaultValue";
}
@RequestMapping("/radio")
public String getRadioValue(ModelMap model,@ModelAttribute("radioBtn")String radioBtn){
model.addAttribute("result","你选择的是 "+radioBtn);
return "result";
}
在这个例子中,使用ModelAttribute注解的getRadio()方法返回了默认的值defaultValue,然后getRadioValue()方法中可以通过ModelAttribute注解快速获取并使用默认值。
获取复选框的值
在SpringMVC中,复选框值的获取通常需要使用数组或者List类型的参数。SpringMVC会自动将前端表单提交的勾选框的值绑定到数组或者List类型的参数上。下面是两条示例说明:
示例1:使用@RequestParam接收复选框的值
通过使用@RequestParam注解,可以将前端表单提交的复选框的值绑定到控制器方法的参数中,示例代码如下所示:
@RequestMapping("/checkbox")
public String getCheckBox(@RequestParam(value="hobby", required=false) String[] hobby, Model model){
if(hobby != null){
model.addAttribute("result", "您选择的爱好是: " + Arrays.asList(hobby).toString());
}
else{
model.addAttribute("result", "您没有选择爱好.");
}
return "result";
}
@RequestParam注解中的参数"value"指定前端表单对应的字段名称,这里获取到的是勾选框中选中的所有value值。
示例2:使用ModelAttribute注解获取复选框的值
使用ModelAttribute注解同样可以获取前端表单提交的复选框中勾选的值,示例代码如下所示:
@ModelAttribute("hobbies")
public List<String> getHobbies(){
List<String> hobbies = new ArrayList<String>();
hobbies.add("篮球");
hobbies.add("足球");
hobbies.add("羽毛球");
hobbies.add("游泳");
return hobbies;
}
@RequestMapping("/checkbox")
public String getCheckBoxValue(Model model,@RequestParam(value="selectedHobbies",required=false) List<String> selectedHobbies){
if(selectedHobbies != null){
model.addAttribute("result","你选择的爱好是:"+selectedHobbies.toString());
}else{
model.addAttribute("result","您未选择任何爱好");
}
return "result";
}
在这个例子中,使用ModelAttribute注解的getHobies()方法返回了所有可选爱好的List对象,然后获取已选择的复选框的值时,使用@RequestParam注解并指定参数值为"selectedHobbies",即可获取到所有勾选框中被选中的值。
本文标题为:SpringMVC如何获取表单数据(radio和checkbox)


基础教程推荐
- Spring MVC数据绑定方式 2023-06-30
- java 解决Eclipse挂掉问题的方法 2024-01-10
- springboot中request和response的加解密实现代码 2022-12-08
- JSP servlet实现文件上传下载和删除 2023-07-30
- SpringBoot 2.5.5整合轻量级的分布式日志标记追踪神器TLog的详细过程 2023-06-17
- SpringBoot嵌入式Web容器原理与使用介绍 2023-06-17
- 详解http请求中的Content-Type 2023-07-31
- 用javascript制作qq注册动态页面 2023-12-16
- 关于@MapperScan包扫描的坑及解决 2023-04-16
- jsp hibernate的分页代码第3/3页 2024-01-11