antd 不用form onsubmit 如何完成必填项的校验

antd 不用form onsubmit 如何完成必填项的校验

 

需求: 需要对一个给用户打分文本表单,增加非空校验。正常情况下是(官方文档推荐方法),创建一个form 表单。 然后通过onsubmit进行提交。  但是我的是一个table来组成的表单。并且行数是动态的。  类似如下图:

<input/><input/>
<input/><input/>
     :     :

 所以:创建<form>表单来进行,数据非空校验明显不太现实:

然后求助百度。。。。

   有一篇:https://segmentfault.com/q/1010000012884210 感觉靠谱:就尝试了一下。发现能实现我的需求:

  code:

   

function a (e){
    e.preventDefault();//***
    this.props.form.validateFields((err) => {//***
          if (err) {
             // 校验不通过  
             return;
          }else{
            // TODO 校验通过     
          }
 }

这种方式的好处是,只要你申明了

<FormItem>
                {getFieldDecorator(`thinkDoMark${row.id}`, {
                  initialValue :text,
                  rules: [{
                    required: true, message: '请输入分数!',
                  }],
                  onChange: (e) => self.changeScore(e, `thinkDoMark-${row.id}`)
                })(
                  <InputNumber min={0} max={3} step={0.1} precision={1} placeholder="0-3分"  />
                )}
              </FormItem>

 

 

可以不用创建form 表单就可以 直接对rules 规则进行校验。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值