0

我一直在使用 @ModelAttribute 将我的表单变量“转换”到一个类(它代表数据库中的一个表)中,并且效果很好。

但我正在处理另一个表单,我需要在表单中有一个不代表数据库中数据的隐藏字段。我只是将它传递给我的代码的业务逻辑部分。

我现在如何在我的函数中访问这个隐藏字段?我不想编辑我的表类来添加这个新字段,因为这看起来很糟糕。而且我知道我可以创建一个只包含表单中所有字段的新类,但我不确定这是否是最好的方法。

谢谢!:)

这些是我现在拥有的(只有表格字段但有效)。

我的jsp页面

<form:form modelAttribute="fab" method="post" action="SaveEventRegistration.html">

我的 java 代码接受表单提交

@RequestMapping("/SaveEventRegistration")
public ModelAndView saveEventRegistration(@ModelAttribute Fab fab) {
        System.out.println(fab.getStudentId());
4

1 回答 1

1

您无需更改表及其 pojo。要获取无法在 ModelAttribute 对象中绑定的隐藏字段值,您只需使用 html 输入标记在表单内的 jsp 中声明该隐藏字段,并使用所需值将其隐藏。

现在在控制器函数中,您需要有一个参数HttpServletRequest request并获取隐藏字段的值,例如名称为hdParamrequest.getParameter("hdParam").

我希望这可以帮助你。干杯。

于 2013-02-07T05:38:28.630 回答