美文网首页
iView日期表单组件设置开始时间结束时间校验功能

iView日期表单组件设置开始时间结束时间校验功能

作者: 桃花谷主V | 来源:发表于2019-12-11 12:00 被阅读0次

    前端在表单中校验结束时间晚于开始时间,开始时间早于结束时间是经常会遇到的需求,那么在使用iviewDatePicker组件是如何校验的呢?且看以下内容。

    模板

    <template>
      <Form>
        <FormItem label="开始时间" prop="startTime">
          <DatePicker 
            v-model.trim="formDatas.startTime"
            type="date" 
            placeholder="请选择开始时间" 
            :options='startTimeOptions'
            @on-change="onStartTimeChange"
            clearable></DatePicker>
        </FormItem>
        <FormItem label="结束时间" prop="endTime">
          <DatePicker 
            v-model.trim="formDatas.endTime" 
            type="date" 
            placeholder="请选择结束时间" 
            :options='endTimeOptions'
            @on-change="onEndTimeChange"
            clearable></DatePicker>
        </FormItem>
      </Form>
    </template>
    

    逻辑

    <script>
      export default {
        data() {
          return {
            formDatas: {
              startTime: '',
              endTime: ''
            },
            startTimeOptions: {},
            endTimeOptions: {}
          }
        },
        methods: {
          onStartTimeChange(startTime,type) {
            this.endTimeOptions = {
              // 设置结束时间不能选的范围
              disabledDate(endTime) {
                return endTime < new Date(startTime)
              }
            }
            this.formDatas.startTime = startTime
          },
          onEndTimeChange(endTime,type) {
            this.startTimeOptions = {
              // 设置开始时间不能选的范围
              disabledDate(startTime) {
                return startTime > new Date(endTime)
              }
            }
            this.formDatas.endTime = endTime
          }
        }
      }
    </script>
    

    相关文章

      网友评论

          本文标题:iView日期表单组件设置开始时间结束时间校验功能

          本文链接:https://www.haomeiwen.com/subject/wojogctx.html