uview表单校验使用的坑

        我们在使用uview的时候有些表单项是不允许用户修改的,对应input绑定的数据是用户点击选择框获得的,所以我们在input上写了disabled属性来禁用输入框,但是禁用之后无法触发表单校验的change以及blur,当表单校验不通过,即使后面我们的数据是通过验证的但是提示消息依然存在,虽然可以通过表单验证,但是造成用户体验不好。后面我在想不使用disabled使用readonly但是发现uniapp不支持这个属性。

photo: [
          {
            // 自定义验证函数,见上说明
            validator: (rule, value, callback) => {
              if (this.form.imgUrl) {
                return true
              }
              if (!this.form.imgUrl) {
                return false
              }
            },
            message: '请选择图片',
            // 触发器可以同时用blur和change
            trigger: ['blur', 'change'],
          },
        ],

         以上校验规则无法触发触发器,只有调用表单校验方法的时候提示才会消失

        我的解决思路,不在表单校验上述表单项,在用户点击提交的时候自己写方法判断,要是判断不通过则弹框提示

你可能感兴趣的:(vue.js,javascript,html)