zoukankan      html  css  js  c++  java
  • element-ui--表单校验

     el-form-item绑定的prop必须和该item下的表单元素绑定的v-model值的名称一致。
     
    1.实现对一个表单进行两套或以上的验证
    花了一点时间摸索,我想:如果不像官方给的那样,rules="rules",然后在data下设置rules的值,而是把rules绑定一个函数,这个函数在computed计算属性中,根据不同的条件设置不同的验证方法不就可以了?自己尝试了一下,真的成功了,代码如下:
    <el-form class="dialog-body" :rules="rulesList" :model="temp">
    <!--这里为表单内容-->
    </el-form>
     
    <script>
    export default {
      data() {
        return {
          rules: {
            pay_type: [
              { required: true, message: '不能为空', trigger: 'change' }
            ],
          },
          rules2: {
            pay_type: [
              { required: true, message: '不能为空', trigger: 'change' }
            ]
          },
        }
      },
    computed: {
        rulesList: function() {
          if (this.temp.pay_type) {
            return this.rules
          } else {
            return this.rules2
          }
        }
      }
     
    2.自定义的规则
    data() {
        const validatePass = (rule, value, callback) => {
          if (this.option) {
            callback(new Error('请选择列表中已有的选项'))
          } else {
            callback()
          }
        }
        return {
            rules: {
                firstContract: [
                  { required: true, message: '不能为空', trigger: ['blur', 'change'] },
                  { required: true, trigger: 'blur', validator: validatePass }
                ],
            }
        }
    }
     

  • 相关阅读:
    hdoj2159【二位费用背包】
    POJ2367【拓扑排序】
    POJ2371【水题】
    POJ2369【循环节】
    POJ2370【水题】
    POJ2365【几何】
    POJ2366【二分】
    POJ1276【多重背包】
    瞎说一波3种基本背包问题【希望巨巨们指出错误】
    Codeforces 550B 【暴力】
  • 原文地址:https://www.cnblogs.com/absoluteli/p/14052374.html
Copyright © 2011-2022 走看看