Blazor表单提交核心是EditForm组件+模型绑定+OnValidSubmit/OnInvalidSubmit事件处理。需用EditForm包裹表单并指定Model,绑定InputText等内置组件实现双向绑定,配合Data Annotations验证特性与DataAnnotationsValidator启用客户端验证,提交后可重置模型或导航。

Blazor 表单提交核心是靠 EditForm 组件 + 模型绑定 + 处理 OnValidSubmit 或 OnInvalidSubmit 事件,不需要手动调用 JavaScript 或操作 DOM。
用 EditForm 包裹表单内容
EditForm 是 Blazor 内置的表单容器组件,它会自动跟踪模型状态、触发验证、处理提交逻辑。必须指定 Model 参数(通常是 C# 类实例),并绑定提交事件:
使用 @onsubmit 是无效的——Blazor 表单不走原生 HTML 提交流程正确做法是设置 OnValidSubmit(验证通过时触发)和/或 OnInvalidSubmit(验证失败时触发)示例:
绑定输入字段用 @bind
表单控件(如 InputText、InputNumber、InputCheckbox)要和模型属性双向绑定:
推荐用内置输入组件(如 ),它们自带验证反馈和变更通知若用原生 HTML 标签(如 ),需手动写 @bind 或 @onchange,但会丢失验证集成能力确保模型属性有 public get/set,且类型匹配(例如 string 对应 InputText)
验证模型要加 Data Annotations
Blazor 默认支持 .NET 的数据注解(Data Annotations),比如 [Required]、[EmailAddress]、[Range]:
在模型类属性上添加特性,例如:[Required(ErrorMessage = "用户名必填")] public string Name { get; set; }配合 组件(放在 EditForm 内),才能启用客户端验证验证失败时,EditForm 不会触发 OnValidSubmit,而是触发 OnInvalidSubmit(可选)
提交后通常要重置或跳转
提交成功后,常见操作包括清空表单、显示提示、导航到新页面:
重置表单:新建模型实例,例如 user = new User();,Blazor 会自动更新 UI显示成功消息:用 NavigationManager 导航,或用状态变量控制
disabled 属性(绑定到布尔变量),提交中设为 true,完成后恢复
基本上就这些。Blazor 表单提交是声明式、组件化、强类型验证的,关键在于用对 EditForm、@bind 和 DataAnnotationsValidator,而不是手写事件和取值逻辑。
以上就是Blazor 表单怎么提交的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1442942.html
微信扫一扫
支付宝扫一扫