微信小程序表单加规则验证

 <form bindsubmit="onSubmit" report-submit="true">
    <view class="form-group">
      <label class="label"> 名称:</label>
      <t-input class="input" name="mc" placeholder="请输入名称" allowInputOverMax='false' maxlength="25" status="error" tips="{{errors.mc}}" value="{{formData.mc}}" data-name="mc" bindchange="onInputChange" />
    </view>
</form>
Page({
  data: {
    formData: {
      mc: ''
    },
    errors: {
      mc: ''
    }
  },


//规则验证
  validateForm() {
    // 联系电话,从业人数,身份证,联系电话
    const { mc} = this.data.formData;
    const errors = { mc};

    // 简单的验证逻辑
    if (!mc) {
      errors.mc = '名称不能为空';
    } else if (!/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/.test(mc )) {
      errors.mc = '名称格式不正确';
    }
  
    this.setData({ errors });
    return !errors.mc ; // 返回验证是否通过
  },

  // 规则验证错误信息显示
  onInputChange(e: any) {
    let name = e.currentTarget.dataset.name;
    this.setData({
      [`formData.${name}`]: e.detail.value,
      [`errors.${name}`]: '' // 清空错误信息
    });
  },

  onSubmit() {
    if (validateFields(formData)) {
        console.log('获取成功')
    }
 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值