最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

element日期時間選擇器限制時間選擇功能實現(xiàn)(精確到小時)

 更新時間:2025年01月21日 10:14:34   作者:小太陽...  
文章介紹了如何使用Element UI的DateTimePicker組件來實現(xiàn)一個時間選擇器,該選擇器只能選擇當(dāng)前時間之后的7天,并且不能選擇當(dāng)前小時,感興趣的朋友跟隨小編一起看看吧

需求:選一個開始時間,要求精確到小時,小于當(dāng)前時刻的小時不讓選擇,只能往后選7天。
如圖:

需要element的DateTimePicker 日期時間選擇器
部分代碼如下:

  <el-form-item
    label="出發(fā)時間:"
    prop="startTime">
    <el-date-picker
      v-model="editForm.startTime"
      :picker-options="pickerOptions"http:// 控制時間選擇
      format="yyyy-MM-dd HH:mm"
      type="datetime"
      placeholder="選擇日期時間"
    />
  </el-form-item>
    pickerOptions: {
      disabledDate(time) {
        let dateTime = new Date();
        let startDateTime = dateTime.setDate(dateTime.getDate() - 1);
        let endDateTime = dateTime.setDate(dateTime.getDate() + 7);
        return (
          time.getTime() < new Date(startDateTime).getTime() ||
          time.getTime() > new Date(endDateTime).getTime()
        );
      },
      selectableRange:
        new Date(new Date().setHours(new Date().getHours() + 1)).format(
          'hh'
        ) + ':00:00 - 23:59:00'
    },

selectableRange:可選時間段
startDateTime 時間戳
new Date(startDateTime) 標(biāo)準(zhǔn)時間
new Date(startDateTime).getTime() 時間戳

還需要watch監(jiān)聽和computed,如果不監(jiān)聽,那么每一天的當(dāng)前小時都會被禁用

  computed: {
    startTime() {
      return this.editForm.startTime;
    }
  },
  watch: {
    startTime: function(newVal, oldVal) {
      let selectDate = newVal.format('yyyyMMdd');
      let oldDate = oldVal.format('yyyyMMdd');
      let nowDate = new Date().format('yyyyMMdd');
      // 如果兩次選擇的時間不相等
      if (oldDate !== selectDate) {
        // 如果這次選擇的時間等于今天的時間就不讓選當(dāng)前小時之前,否則就可以選全部時間段
        if (selectDate === nowDate) {
          this.pickerOptions.selectableRange =
            new Date(new Date().setHours(new Date().getHours() + 1)).format(
              'hh'
            ) + ':00:00 - 23:59:00';
        } else {
          this.pickerOptions.selectableRange = '00:00:00 - 23:59:00';
        }
        let realNewVal = new Date(
          newVal.format('yyyy-MM-dd') + oldVal.format(' hh:mm:ss')
        );
        // 如果這個時間比當(dāng)前時間小,就等于當(dāng)前時間,否則等于這個參數(shù)的時間
        if (realNewVal.getTime() < new Date().getTime()) {
          this.editForm.startTime = new Date();
        } else {
          this.editForm.startTime = realNewVal;
        }
      }
    }
  },

重寫了format方法,代碼如下:格式化時間也可以用庫,比如moment

/**
 * 格式化日期
 */
export const dateFormat = function() {
  /* eslint-disable no-extend-native */
  Date.prototype.format = function(fmt) {
    let o = {
      'M+': this.getMonth() + 1, // 月份
      'd+': this.getDate(), // 日
      'h+': this.getHours(), // 小時
      'm+': this.getMinutes(), // 分
      's+': this.getSeconds(), // 秒
      'q+': Math.floor((this.getMonth() + 3) / 3), // 季度
      S: this.getMilliseconds() // 毫秒
    };
    if (/(y+)/.test(fmt)) {
      fmt = fmt.replace(
        RegExp.$1,
        (this.getFullYear() + '').substr(4 - RegExp.$1.length)
      );
    }
    for (let k in o) {
      if (new RegExp('(' + k + ')').test(fmt)) {
        fmt = fmt.replace(
          RegExp.$1,
          RegExp.$1.length === 1
            ? o[k]
            : ('00' + o[k]).substr(('' + o[k]).length)
        );
      }
    }
    return fmt;
  };
};

注意:Date 對象(Date 對象用于處理日期與時間)
new Date() 中國標(biāo)準(zhǔn)時間

到此這篇關(guān)于element日期時間選擇器限制時間選擇功能實現(xiàn)(精確到小時)的文章就介紹到這了,更多相關(guān)element日期時間選擇器內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Vue+elementUI實現(xiàn)多圖片上傳與回顯功能(含回顯后繼續(xù)上傳或刪除)

    Vue+elementUI實現(xiàn)多圖片上傳與回顯功能(含回顯后繼續(xù)上傳或刪除)

    這篇文章主要介紹了Vue+elementUI實現(xiàn)多圖片上傳與回顯功能(含回顯后繼續(xù)上傳或刪除),本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03
  • vue+echarts5實現(xiàn)中國地圖的示例代碼

    vue+echarts5實現(xiàn)中國地圖的示例代碼

    本文主要介紹了vue+echarts5實現(xiàn)中國地圖的示例代碼,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • vue 遞歸組件的簡單使用示例

    vue 遞歸組件的簡單使用示例

    這篇文章主要介紹了vue 遞歸組件的簡單使用示例,幫助大家更好的理解和使用vue框架,感興趣的朋友可以了解下
    2021-01-01
  • vue組件historyApiFallback作用詳解

    vue組件historyApiFallback作用詳解

    這篇文章主要為大家介紹了vue組件historyApiFallback作用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-06-06
  • Vue中slot-scope的深入理解(適合初學(xué)者)

    Vue中slot-scope的深入理解(適合初學(xué)者)

    這篇文章主要給大家介紹了關(guān)于Vue中slot-scope的深入理解,這個教程非常適合初學(xué)者,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • Vue循環(huán)組件加validate多表單驗證的實例

    Vue循環(huán)組件加validate多表單驗證的實例

    今天小編就為大家分享一篇Vue循環(huán)組件加validate多表單驗證的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • 前端監(jiān)控方案詳解以及最佳實踐

    前端監(jiān)控方案詳解以及最佳實踐

    前端性能監(jiān)控是一種用于實時監(jiān)控前端用戶行為和響應(yīng)時間數(shù)據(jù)的技術(shù),這篇文章主要介紹了前端監(jiān)控方案以及最佳實踐的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-09-09
  • Vue+Element-ui表單resetFields無法重置問題

    Vue+Element-ui表單resetFields無法重置問題

    本文主要介紹了Vue+Element-ui表單resetFields無法重置問題,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • Vite3遷移Webpack5的實現(xiàn)

    Vite3遷移Webpack5的實現(xiàn)

    本文主要介紹了Vite3遷移Webpack5的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • 在Vue項目中修改啟動后的Logo和項目名稱的方法

    在Vue項目中修改啟動后的Logo和項目名稱的方法

    在Vue項目開發(fā)中,我們經(jīng)常需要根據(jù)項目需求修改默認(rèn)的品牌標(biāo)識,無論是企業(yè)級管理系統(tǒng)還是個人項目,定制化的Logo和名稱都能讓項目更具辨識度,本文將詳細介紹如何在Vue項目中修改啟動后的Logo和項目名稱,需要的朋友可以參考下
    2026-03-03

最新評論

哈巴河县| 温州市| 枣阳市| 高州市| 龙州县| 岳普湖县| 寻甸| 绥滨县| 东宁县| 杨浦区| 团风县| 涡阳县| 宜兰县| 盈江县| 梧州市| 宣武区| 隆昌县| 吉林省| 岱山县| 彭山县| 长阳| 上栗县| 库车县| 油尖旺区| 丰顺县| 基隆市| 漠河县| 苍南县| 望奎县| 吴川市| 资源县| 嘉黎县| 周口市| 射洪县| 雷山县| 专栏| 饶阳县| 灵川县| 阳江市| 荣昌县| 鹤庆县|