表单
表单是一组输入控件,允许用户向服务器提交数据,并支持提供字段验证错误。
安装
以上命令仅用于单独安装。 如果您已全局安装 @heroui/react
,则可以跳过此步骤。
导入
用法
解剖
Form
是输入元素和提交/重置按钮的容器,支持验证消息。 当使用 aria-label
或 aria-labelledby
标记时,它将成为辅助技术的导航 表单地标。
事件
当用户使用 Enter
键或按下提交按钮提交表单时,将触发 onSubmit
事件。 当用户按下重置按钮时,将触发 onReset 事件。
验证
Form
支持原生 HTML 约束验证,具有可自定义的 UI、自定义验证函数和服务器端验证。 服务器端验证错误可以通过 validationErrors
属性作为字段名称到错误消息的对象映射提供,当用户修改字段时,这些错误消息将被清除。
请参阅表单指南,以了解有关表单验证的更多信息,包括客户端验证以及与其他框架和库的集成。
验证行为
Form
验证默认使用 ARIA 属性,但可以通过设置 validationBehavior="native"
切换到原生 HTML 验证。 ARIA 验证显示实时错误,而不会阻止提交。 这可以在表单或字段级别设置。
无障碍性
- 基于原生 HTML
<form>
元素构建,支持 ARIA 标签以创建表单地标(form landmark)。 - 完全支持浏览器特性,如表单自动填充。
- 支持原生 HTML 约束验证,并提供可自定义的 UI、自定义验证函数、实时验证和服务器端验证错误。
API
表单属性
属性 | 类型 | 默认值 |
children |
| |
validationBehavior |
| "aria" |
validationErrors |
| |
action |
| |
encType |
| |
method |
| |
target |
| |
autoComplete |
| |
autoCapitalize |
| |
className |
| |
style |
|