如何在Spring MVC中获取禁用复选框的值

时间:2012-11-23 05:28:50

标签: java jsp spring-mvc

我正在使用Spring MVC应用程序,但是在禁用它时,我遇到了获取复选框值的问题。

报告.jsp页面中的

<form:checkbox type="checkbox" path="corporateColumn" id="corporateColumn" value="true" checked="checked" disabled="true" />
ReportForm.java中的

boolean corporateColumn ;

public boolean isCorporateColumn() {
        return corporateColumn;
}

public void setCorporateColumn(boolean corporateColumn) {
        this.corporateColumn = corporateColumn;
}

在ReportController.java中;

boolean corporateColumn = reportDTO.isCorporateColumn(); // this evaluates to false
//Which expected as true when corporateColumn checkbox is checked

除非对复选框字段使用disabled =“true”(/ disabled =“$ {'true'}”),否则一切正常。

我在获取禁用文本字段的值时也遇到了类似的问题,并通过只读字段来克服它。 所以我不确定Spring MVC在禁用时是否无法获取输入字段的值。

任何指导都会非常感激。

谢谢!

2 个答案:

答案 0 :(得分:8)

很遗憾地说,但这是不可能的。

使用开发者工具(如在Chrome中)检查发布的数据,您可以确认浏览器在禁用或取消选中时不会发送复选框的数据。

为什么不简单地使用'readonly'而不是'disabled'?

答案 1 :(得分:3)

禁用的字段数据不会传递给服务器。