国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

對input輸入框做日期輸入限制的幾種方法

這篇具有很好參考價值的文章主要介紹了對input輸入框做日期輸入限制的幾種方法。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

用戶輸入一個日期的時候,我們?nèi)绾螌ζ渥鲆粋€輸入限制呢?試想一下,如果你輸入一個13月份出來,直接彈框提醒你,會覺得冗余界面復(fù)雜,我們可以直接清掉這個3。此外,假如我們希望別人輸入的日期格式如下:2024.01.12時,應(yīng)該如何來規(guī)定呢?

QQ錄屏20240112102820

首先,我們第一個想到的應(yīng)該是使用正則來匹配

   const regex = /^\d{4}\.\d{2}\.\d{2}$/;

除了正則外,想達(dá)到一個邊輸入邊驗證輸入是否合法的效果,使用事件和監(jiān)聽來做。

1.首先寫一個input輸入框,v-model綁定一個值,對input使用@input事件。

 <el-input v-model="baseData.recTime"  placeholder="不填寫則為系統(tǒng)默認(rèn)時間"
                @input="validateAndFormatDateInput"></el-input>

?2.判斷哪些位是小數(shù)點,哪些位是數(shù)字,當(dāng)然這兒我限制的并不完全,比如說第九位不能大于3,第九位為3時,第十位不能大于1。這里只是給大家做一個參考:

 validateAndFormatDateInput() {
      // 獲取輸入框的值
      let inputValue = this.baseData.recTime || '';
      // 一邊輸入一邊判斷
      if (
        (inputValue.length === 5 && inputValue[4] !== '.') ||  // 第五位不是小數(shù)點
        (inputValue.length === 8 && inputValue[7] !== '.') ||  // 第八位不是小數(shù)點
        (inputValue.length === 1 && isNaN(parseInt(inputValue[0]))) ||// 第一位不是數(shù)字
        (inputValue.length === 2 && isNaN(parseInt(inputValue[1]))) ||
        (inputValue.length === 3 && isNaN(parseInt(inputValue[2]))) ||
        (inputValue.length === 4 && isNaN(parseInt(inputValue[3]))) ||
        (inputValue.length === 6 && parseInt(inputValue[5]) > 1) ||  // 第六位大于1
        (inputValue.length === 9 && parseInt(inputValue[8]) > 3)  // 第九位大于3
      ) {
        // 不符合條件,移除最后輸入的字符
        this.baseData.recTime = inputValue.slice(0, -1);
      }
      // 只保留符合格式的字符
      this.baseData.recTime = this.baseData.recTime.replace(/[^\d.]/g, '');
    }

?除此外使用watch來監(jiān)聽:文章來源地址http://www.zghlxwxcb.cn/news/detail-811685.html

 "baseData.recTime": {
      handler(newVal, oldVal) {
        console.log(newVal, oldVal);

        if ((oldVal + "").length > (newVal + "").length) {
          return;
        }

        clearTimeout(this.watchTimer);
        this.watchTimer = setTimeout(() => {

          this.baseData.recTime = newVal.replace(/[^\d\.\s]/g, "");
          let _value = newVal.replace(/[^\d.]/g, "") + ""; //去掉除開數(shù)字和小數(shù)點
          console.log(_value);
          this.baseData.recTime = _value;
          if (_value == 0) {
            this.baseData.recTime = "";
            return;
          }
          if (_value.length <= 4) {
            let _len = _value.length;
            if ((_value.replace(/\D/g, "") + "").length != _len) {
              this.baseData.recTime = _value.replace(/\D/g, "");

              return;
            }

            if (_value.length == 4) {
              this.baseData.recTime = _value + ".";
            }
          }

          if (_value.length > 4) {
            let _stepValue1 = _value.slice(0, 4);
            let _len = _stepValue1.length;
            if ((_stepValue1.replace(/\D/g, "") + "").length != _len) {
              this.baseData.recTime = _stepValue1.replace(/\D/g, "");
              return;
            }
            if (_value.length == 5) {
              if (_value[4] != ".") {
                this.baseData.recTime = _value.slice(0, 4);
                return;
              }
            }
            if (_value.length > 5) {
              if (_value[5] != "1" && _value[5] != "0") {
                this.baseData.recTime = _value.slice(0, 5);
                return;
              }
              if (parseInt(_value[6]) > 2 && _value[5] == "1") {
                this.baseData.recTime = _value.slice(0, 6);
                return;
              }
              if (_value.length > 7) {
                this.baseData.recTime = _value.slice(0, 7);
                return;
              }
            }
          }
        }, 100);
      },
      immediate: false,
      deep: true
    },

到了這里,關(guān)于對input輸入框做日期輸入限制的幾種方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 限制 SLS告警通知時段的幾種常見方法

    限制 SLS告警通知時段的幾種常見方法

    在對系統(tǒng)進(jìn)行監(jiān)控告警的過程中,有時候并非在任何時候都要接收告警通知,例如以下場景: 計劃內(nèi)變更觸發(fā)的已知告警可以無需通知 非工作時間不接收不嚴(yán)重的告警 夜里不接收電話告警 等等 本文會介紹幾種常見的限制告警通知時段的方法,以及它們各自所適用的場景。

    2024年02月02日
    瀏覽(40)
  • input限制只能輸入數(shù)字,限制輸入數(shù)字長度或者大小

    input限制只能輸入數(shù)字,限制輸入數(shù)字長度或者大小

    1.限制只能輸入數(shù)字 方式一 :此方式只能控制輸入的內(nèi)容是數(shù)字,不能控制是否是正負(fù)數(shù) 方式二 :此方式可控制輸入的內(nèi)容是數(shù)字 了解一下 js replace : 拓展 1.限制輸入的數(shù)字長4位 了解一下 js slice : 2.限制輸入的數(shù)字最大值為10 3.限制輸入的數(shù)字最小值為0 4.限制長度,大小

    2024年02月11日
    瀏覽(41)
  • input 輸入框限制只能輸入兩位有效小數(shù)

    input 輸入框限制只能輸入兩位有效小數(shù)

    前端入門即教學(xué),今天博主分享幾個前端金額實用的小案例,復(fù)制拿過去就能用哦! ? ?相信有很多前端小伙伴在工作中遇到過這樣的需求,就是限制輸入框內(nèi)容只能輸入兩位小數(shù)吧,想了用正則但是又不知道怎么下手的同學(xué),接下來博主分享一個小案例,下次遇到這個的時

    2024年02月01日
    瀏覽(21)
  • input輸入限制:自動補全兩位小數(shù)、金額限制兩位小數(shù)、只能輸入正整數(shù)

    金額自動補全兩位小數(shù) 限制只能輸入正整數(shù) 金額限制兩位小數(shù) 金額限制兩位數(shù),支持輸入負(fù)數(shù)

    2024年04月17日
    瀏覽(27)
  • QT子線程或自定義類操作訪問主界面UI控件的幾種方法

    QT子線程或自定義類操作訪問主界面UI控件的幾種方法

    ????????QT創(chuàng)建窗體工程,一般在MainWindow或Dialog類里可以直接通過ui指針訪問控件,但是添加新的類后又如何訪問呢,可以通過以下幾種方式: (1)例如有個自己定義的類CustomClass,在自定義類里包含主界面指針MainWindow * class MainWindow; ? class CustomClass { public: ? ? CustomCla

    2024年02月09日
    瀏覽(23)
  • vue前端el-input輸入 限制輸入位數(shù)以及輸入規(guī)則

    前端兼容el-input輸入時,僅允許輸入負(fù)號、數(shù)字以及小數(shù)點,且限制整數(shù)位數(shù)以及小數(shù)位數(shù),且不允許輸入除第一個負(fù)號以外的其他符號 1、使用element-ui插件的el-input組件作為頁面元素,為其綁定input事件(我這里是在表格里使用slot插入的inpu元素,所以傳入?yún)?shù)使用scope傳入)

    2024年02月09日
    瀏覽(24)
  • 限制 el-input 輸入 emoji

    限制 el-input 輸入 emoji

    快捷鍵 win+; 或 win+.

    2024年02月12日
    瀏覽(34)
  • vue限制input框輸入特殊字符和漢字

    在設(shè)計vue輸入框時,限制input框輸入特殊字符和漢字。 一開始參考此博客:https://blog.csdn.net/ks8380/article/details/96478522 進(jìn)行特殊字符的限制, 代碼如下: 此方法可以實現(xiàn)對特殊字符的限制,但當(dāng)微軟自帶輸入法輸入中文時卻會自動識別字母,此字母搜索框并未獲取且無法正常

    2024年02月11日
    瀏覽(20)
  • el-input限制輸入整數(shù)等分析

    el-input限制輸入整數(shù)等分析

    input 限制輸入在平時的需求比較常見,例如限制輸入非數(shù)字,限制輸入整數(shù),限制輸入的小數(shù)位數(shù)等等。這里分析下各種實現(xiàn)方式。 使用 type 屬性為 number :將 el-input 的 type 屬性設(shè)置為 number ,這將限制用戶只能輸入數(shù)字。然而,這種方式仍然允許輸入小數(shù)。如果你希望只接

    2024年02月05日
    瀏覽(33)
  • 【限制輸入框值類型】自定義指令el-input輸入類型限制,vue和html兩個版本

    經(jīng)常遇到輸入框需要限制只能輸入數(shù)字的, 因為用戶很離譜,明顯輸入數(shù)字的地方他非要輸入英文或者中文 但是用到UI框架或者自己寫方法驗證表單比較麻煩 為了一個輸入框?qū)iT去弄一個驗證很麻煩 所以這里就整合了兩種自定義指令的方式,更加方便使用 vue版本和 html版本

    2024年02月05日
    瀏覽(32)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包