对于List对象,如果没有BindingResult,则表单提交不起作用

时间:2018-10-31 19:24:13

标签: spring-mvc spring-mvc-initbinders

我需要解释BindingResults的作用。尽管我已经在Internet上对其进行了研究,并且它似乎用于验证请求并保留错误,但是我没有找到详细的答案来解释我所遇到的情况。

所以下面是实体中的字段

private List<Grade> listOfGrade;

由表格

填充

        选择成绩

    <td>   
           <select id="listOfGrade" name="listOfGrade" multiple="multiple">
             <option value="70">6</option><option value="71">7</option><option value="72">8</option><option value="73">9</option><option value="74">9</option>
           </select><input type="hidden" name="_listOfGrade" value="1"/>
   </td> 
</tr>

如果我从表单中删除了上面提到的“选择”,则提交表单时不使用bindingResult;但是如果保留该表单,则必须在不将BindingResult选项添加到控制器方法的情况下提交表单。出现错误400。为什么?

预先感谢! 阿比

1 个答案:

答案 0 :(得分:0)

关于“ 400错误的请求”错误的问题答案是,如果删除选择,则显然会给出400错误,因为listOfGrade字段将不存在。

并要验证列表,请参考以下答案。

https://stackoverflow.com/a/34227850/6572971

希望有帮助。