Jakarta ee 下拉选择要在春季传输的值
当用户单击正在提交表单的搜索按钮时,我需要从jsp传输下拉列表中选择的值Jakarta ee 下拉选择要在春季传输的值,jakarta-ee,spring-mvc,Jakarta Ee,Spring Mvc,当用户单击正在提交表单的搜索按钮时,我需要从jsp传输下拉列表中选择的值 <form:form modelAttribute="firstVO" method="post"> <form:select path="secondVO.status" id="status" > <form : option value="all" label="All" /> <form : option value="ne
<form:form modelAttribute="firstVO" method="post">
<form:select path="secondVO.status"
id="status" >
<form : option value="all" label="All" />
<form : option value="new" label="New" />
</form:select>
<input type="button" name="search" value="Search" onclick="filterData();" />
</form:form>
function filterData(){
document.forms[0].action = Path+"/filter.do";
document.forms[0].submit();
}
-------------------------------------------------
public class FirstVO {
private SecondVO secondVO;
}
public class SecondVO {
private String status;
}
public class DPSController {
@RequestMapping(value = "/filter.do")
public ModelAndView filterDashboard(HttpServletRequest request, @ModelAttribute SecondVO secondVO) {
System.out.println("secondVO.getStatus:"+secondVO.getStatus());
}
}
您的模型属性是firstVO,而不是secondVO。如下图所示更改filterDashboard签名应该可以工作 改变
@RequestMapping(value = "/filter.do")
public ModelAndView filterDashboard(HttpServletRequest request, @ModelAttribute SecondVO secondVO) {
System.out.println("secondVO.getStatus:"+secondVO.getStatus());
}
到
这东西能正常工作。谢谢但若我在jsp页面中添加一个文本框并在DPSController类中访问它,那个么它将返回null。例如:JSP:public class SecondVO{private String status;private String psoNumber;}@RequestMapping(value=“/filter.do”)公共模型和视图过滤器仪表板(HttpServletRequest,@modeldattribute FirstVO FirstVO){System.out.println(“FirstVO.getSecondVO().getStatus:+FirstVO.getSecondVO().getPsoNumber());}而不是标记。请试一下,它会正确绑定的。
@RequestMapping(value = "/filter.do")
public ModelAndView filterDashboard(HttpServletRequest request, @ModelAttribute SecondVO secondVO) {
System.out.println("secondVO.getStatus:"+secondVO.getStatus());
}
@RequestMapping(value = "/filter.do")
public ModelAndView filterDashboard(HttpServletRequest request, @ModelAttribute FirstVO firstVO) {
System.out.println("firstVO.getSecondVO().getStatus:"+firstVO.getSecondVO().getStatus());
}