19.2.1 form标签
form标签用于渲染HTML表单。form标签必须利用渲染表单输入字段的其他任意标签。form标签的属性如表19.2所示。
表19.2中的所有标签都是可选的。这个表中没有包含HTML属性,如method和action。
| 属性 | 描述 |
|---|---|
acceptCharset |
定义服务器接受的字符编码列表 |
commandName |
显示表单对象之模型属性的名称。默认为command |
cssClass |
定义要应用到被渲染form元素的CSS类 |
cssStyle |
定义要应用到被渲染form元素的CSS样式 |
htmlEscape |
接受true或者false,表示被渲染的值是否应该进行HTML转义 |
modelAttribute |
显示form backing object的模型属性名称。默认为command |
commandName属性或许是其中最重要的属性,因为它定义了模型属性的名称,其中包含了一个backingobject,其属性将用于填充所生成的表单。如果该属性存在,则必须在返回包含该表单的视图的请求处理方法中添加相应的模型属性。例如,在本章配套的app19a应用程序中,下列form标签是在BookAddForm.jsp中定义的:
1 | <!-- commandName用于指定需要的Model对象中的属性名称 --> |
BookController类中的inputBook方法,是返回BookAddForm.jsp的请求处理方法。下面就是inputBook方法。
1 | (value = "/book_input") |
此处用book属性创建了一个Book对象,并添加到Model。如果没有Model属性,BookAddForm.jsp页面就会抛出异常,因为form标签无法找到在其commandName属性中指定的from backing object。
此外,一般来说仍然需要使用action和method属性。这两个属性都是HTML属性,因此不在表19.2之列。
原文链接: 19.2.1 form标签