vue3 +element-ui 实现时间选择器并校验开始时间小于结束时间

这篇具有很好参考价值的文章主要介绍了vue3 +element-ui 实现时间选择器并校验开始时间小于结束时间。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

<el-form :model="formData" :rules="rules" :inline="true" ref="subimtForm" label-width="100px">
    <el-form-item label="开始时间" required prop="startTime" style="width: 100%">
            <el-date-picker
               v-model="formData.startTime"
               type="datetime"
               format="YYYY/MM/DD HH:mm:ss"
               value-format="YYYY-MM-DD HH:mm:ss"
               placeholder="请选择开始日期"
               style="width: 100%"
            />
    </el-form-item>
    <el-form-item label="结束日期" required prop="endTime" style="width: 100%">
            <el-date-picker
               v-model="formData.endTime"
               type="datetime"
               format="YYYY/MM/DD HH:mm:ss"
               value-format="YYYY-MM-DD HH:mm:ss"
               placeholder="请选择结束日期"
               style="width: 100%"
            />
     </el-form-item>
</el-form>


<script setup>
import {ref,reactive,watch} from 'vue';
let subimtForm = ref();
let formData = ref({});

// 表单规则
const rules = reactive({
   startTime: [{
      required: true,
      validator: (rule, value, callback)=> {
         if(!value){
            callback(new Error("请选择开始时间"));
         }else{
            if(formData.value.endTime){
               subimtForm.value.validateField('endTime');
            }
            callback();
         }
      },
      trigger: 'change',
   }],
   endTime: [{
      required: true,
      validator: (rule, value, callback)=>{
         if(!value){
            callback(new Error("请选择结束时间"));
         }else{
            if(!formData.value.startTime){
               callback(new Error("请选择开始时间!"))
            }else if(Date.parse(formData.value.startTime) >= Date.parse(value)){
               callback(new Error("结束时间必须大于开始时间!"))
            }else{
               callback();
            }
         }
      },
      trigger: 'change',
   }]
});
</script>

文章来源地址https://www.toymoban.com/news/detail-760459.html

到了这里,关于vue3 +element-ui 实现时间选择器并校验开始时间小于结束时间的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • element-ui日期选择器时间差

    #主要记录三个问题 日期选择器选择时获取到的格式相差八小时 当日期格式为–拼接时,转成时间戳会相差八小时(2023-03-09) DatePicker设置区域范围和校验(暂无,明天加上) 由于element-ui日期选择器用的时间为世界标准时间,我们国家的标准时间为东八区,所以会有8小时时间

    2024年02月08日
    浏览(50)
  • element-ui时间选择器(DatePicker )数据回显

    目录 前言 一、element-ui时间选择器(DatePicker )是什么? DatePicker 日期选择器 二、返回数据格式 1.引入 总结 需求: element-ui时间选择器(DatePicker )数据回显,后台返回数据时间,然后回显到前台展示。 效果:   DatePicker 日期选择器 用于选择或输入日期 https://element.eleme.c

    2024年01月19日
    浏览(43)
  • 自定义日历.element-ui 修改时间选择器样式

    目录 一、自定义日历 二、时间选择样式自定义 先上效果图 已经封装成vue组件,可选择切换年月:  因 element-UI的时间选择器 el-date-picker 是将元素直接挂载到页面的 body 中,而非自身元素下,所以使用  /deep/、 、  ::v-deep  等穿透无法定位到元素。 解决方案: 利用时间选择

    2024年02月12日
    浏览(50)
  • element-ui 日期时间选择控件DateTimePicker 带快捷方式,配置默认时间

    前言:好记性不如烂笔头 带快捷方式的 可设置默认时间 js中的Date对象 setHours()方法—— Date .setHours( hour,min,sec,millisec ),如new Date().setHour(0, 0, 0),new Date().setHour(23, 59, 59) 带快捷键的,关键属性picker-options,单个日期时间的选择或者日期时间段的选择都可以用 配置:picker-optio

    2024年02月11日
    浏览(71)
  • Element-UI的DateTimePicker禁用日期时间选择(type=datetime)

    \\\"date-fns\\\": \\\"^2.29.3\\\", \\\"element-ui\\\": \\\"^2.15.13\\\", 效果:    效果:

    2024年02月12日
    浏览(41)
  • element-ui 日期时间选择器el-date-picker 设置禁止选择日期

    使用日期选择器时,有的时候需要禁止选择一些日期,我们可以通过快捷选项 picker-options 对象中的禁用日期属性 disabledDate 来设置。

    2024年02月11日
    浏览(51)
  • element-ui时间日期选择器回显功能以及不能修改问题的解决

    地址:element-ui时间日期选择器不能修改问题的解决 - 走看看 属于是强制更改 编辑的时候,修改了时间,控制台中能看到已修改,可是页面上确没修改而且也不能删除,出现这样的问题,该如何解决? 解决方案:在获取数据回显的时候使用$set: 刚开始是直接赋值(如果不是标

    2024年02月11日
    浏览(45)
  • 前端 element-ui el-date-picker日期选择器限制只能选择当月时间,禁止跨月功能

     实现效果:  代码实现:

    2024年01月24日
    浏览(62)
  • element-ui 实现图标选择器

    实现效果图: 代码如下:

    2024年02月13日
    浏览(59)
  • VSCODE VUE3 element-ui plaus 环境搭建

        目录 一、VUE 1、安装VUE 2、创建项目  二、Element Plus 1、在项目目录中安装 Element Plus,执行 2、引入element 三、vscode 中运行 1、打开项目文件夹 2、点击debug,运行 1)、首次lanch  chrome时 2)、lanch node.js   3)、加入elementui 看看起作用不 最近学习针灸,突然想搭建一个针灸

    2024年02月12日
    浏览(63)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包