zoukankan      html  css  js  c++  java
  • iview自定义表单验证 多表单同时验证 阿星小栈

    一、自定义验证

       

     data () {
                const validateSectionFileType = (rule, value, callback) => {
                    if (value <= 0) {
                        callback(new Error('类型不能为空'));
                    } else {
                        callback();
                    }
                };
                const validateSectionTime = (rule, value, callback) => {
                    if (value === '') {
                        callback(new Error('时间不能为空'));
                    } else {
                        callback();
                    }
                };
                const validateSectionDuration = (rule, value, callback) => {
                    if (!value) {
                        callback(new Error('时间不能为空'));
                    } else {
                        callback();
                    }
                };
                const validateSectionIsFree = (rule, value, callback) => {
                    if (value === '') {
                        callback(new Error('请选择是否收费'));
                    } else {
                        callback();
                    }
                };
                return {
                    ruleEditSection: {
                        title: [
                            {required: true, message: '小节标题不能为空', trigger: 'blur'}
                        ],
                        subTitle: [
                            {required: true, message: '小节副标题不能为空', trigger: 'blur'}
                        ],
                        duration: [
                            { required: true,type: Number, message: '请填写持续时间', trigger: 'blur', validator: validateSectionDuration},
                        ],
                        startTime: [
                             { required: true,message: '请选择开始时间',type: String , trigger: 'change', validator: validateSectionTime},
                        ],
                        sectionDesc: [
                            { required: true,required: true, message: '小节介绍不能为空', trigger: 'blur'}
                        ],
                        type: [
                            { required: true,message: '请选择类型',type: Number | String, trigger: 'change', validator: validateSectionFileType},
                        ],
                        sectionUrl: [
                            {required: true, message: '文件不能为空', trigger: 'change'}
                        ],
                        isFree: [
                            { required: true, message: '请选择是否免费',type: Number | String,  trigger: 'blur', validator: validateSectionIsFree}
                        ]
                    }
                };
            },

    二、v-for  多表单同时验证

     <div class="form-item width-95" v-for="(section, index) in sectionLists">
                        <Card>
                            <Form :label-width="100" ref="sectionLists" :model="section" :rules="ruleEditSection">
                                <FormItem label="小节标题" class="width-24" prop="title">
                                    。。。。。。
                                </FormItem>
                            </Form>
                        </Card>
                    </div>
     for (let i = 0; i < this.sectionLists.length; i++) {
                        let validateStatus = false;
                        this.$refs['sectionLists'+i].validate((valid)
                        if (!validateStatus) {
                            console.log(i)
                            return false;
                        }
                    }

    this.$refs[].validate((valid)

     此时ref里面是待验证数组

      

  • 相关阅读:
    网络中有三种通讯模式:单播、广播、组播(多播)
    chmod命令
    linux bash 命令重定向和多命令执行
    linux中管道符“|”的作用
    web测试常用的 linux 命令
    集群主要分成三大类 (高可用集群, 负载均衡集群,科学计算集群)
    iOS 监测电话呼入
    iOS NSUserDefaults [setValue:forKey:] [setObject:forKey:] <Objc> setValue(_,forKey:) set(_,forKey) <Swift 3>
    iOS 将navigationItem.titleView设置为自定义UISearchBar (Ficow实例讲解)
    iOS 加载Viewcontroller的几种方法
  • 原文地址:https://www.cnblogs.com/dereckbu/p/8921050.html
Copyright © 2011-2022 走看看