当前位置:   article > 正文

antd的表单验证_antd 表单校验

antd 表单校验

目录

使用表单内的按钮验证

使用Form组件实例化进行验证


使用表单内的按钮验证

主要用到了Form组件的这两个方法

  同时表单内的按钮一定要设置成提交类型

 下面是代码演示

  1. import React from 'react'
  2. import { Button, Form, Input } from 'antd'
  3. export default function Music() {
  4. const onFinish = (values) => {
  5. // values就是表单中输入的值
  6. console.log('Success:', values)
  7. }
  8. const onFinishFailed = (errorInfo) => {
  9. console.log('Failed:', errorInfo)
  10. }
  11. return (
  12. <div style={{ width: 400, margin: '0 auto' }}>
  13. <Form
  14. labelCol={{ span: 4 }}
  15. onFinish={onFinish}
  16. onFinishFailed={onFinishFailed}
  17. autoComplete="off"
  18. >
  19. <Form.Item
  20. label="用户名"
  21. name="username"
  22. rules={[
  23. {
  24. required: true,
  25. message: '请输入用户名!',
  26. },
  27. ]}
  28. >
  29. <Input />
  30. </Form.Item>
  31. <Form.Item
  32. label="密码"
  33. name="password"
  34. rules={[
  35. {
  36. required: true,
  37. message: '请输入密码!',
  38. },
  39. ]}
  40. >
  41. <Input.Password />
  42. </Form.Item>
  43. <Form.Item
  44. wrapperCol={{
  45. offset: 8,
  46. span: 16,
  47. }}
  48. >
  49. <Button type="primary" htmlType="submit">
  50. 登录
  51. </Button>
  52. </Form.Item>
  53. </Form>
  54. </div>
  55. )
  56. }

使用Form组件实例化进行验证

获取需要校验的表单的实例化

 通过实例化的validateFields方法触发表单验证

这是此方法返回实例

 代码演示

  1. import React, { useState } from 'react'
  2. import { Modal, Form, Input, Button } from 'antd'
  3. export default function Movie() {
  4. // 表单实例化 会绑定表单的form值为formInstance的内个表单,一一对应
  5. const [formInstance] = Form.useForm()
  6. // 控制对话框的显示/隐藏
  7. const [isModalOpen, setIsModalOpen] = useState(false)
  8. // 按钮点击事件
  9. const showModal = () => {
  10. setIsModalOpen(true)
  11. }
  12. // 对话框点击确定
  13. const handleOk = () => {
  14. // 通过表单实例化的validateFields()方法进行校验
  15. formInstance.validateFields().then((values) => {
  16. // values就是表单中输入的值
  17. console.log(values)
  18. setIsModalOpen(false)
  19. })
  20. }
  21. // 对话框点击取消
  22. const handleCancel = () => {
  23. setIsModalOpen(false)
  24. }
  25. return (
  26. <div>
  27. <Button type="primary" onClick={showModal}>
  28. 显示对话框
  29. </Button>
  30. <Modal
  31. title="Basic Modal"
  32. open={isModalOpen}
  33. onOk={handleOk}
  34. onCancel={handleCancel}
  35. >
  36. <Form form={formInstance} labelCol={{ span: 4 }} autoComplete="off">
  37. <Form.Item
  38. label="用户名"
  39. name="username"
  40. rules={[
  41. {
  42. required: true,
  43. message: '请输入用户名!',
  44. },
  45. ]}
  46. >
  47. <Input />
  48. </Form.Item>
  49. <Form.Item
  50. label="密码"
  51. name="password"
  52. rules={[
  53. {
  54. required: true,
  55. message: '请输入密码!',
  56. },
  57. ]}
  58. >
  59. <Input.Password />
  60. </Form.Item>
  61. </Form>
  62. </Modal>
  63. </div>
  64. )
  65. }

 

 

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号