鍍金池/ 問(wèn)答/Java  Linux  HTML/ input框 使用正則表達(dá)式對(duì)輸入值做校驗(yàn),刪除時(shí)小樹(shù)點(diǎn)被刪除

input框 使用正則表達(dá)式對(duì)輸入值做校驗(yàn),刪除時(shí)小樹(shù)點(diǎn)被刪除

使用elementui的表單中自定義校驗(yàn)規(guī)則對(duì)輸入數(shù)字做校驗(yàn),但是使用回退鍵/刪除鍵刪除時(shí),小數(shù)點(diǎn)一起被刪除。不知道是什么原因,正則表達(dá)式目前能滿足校驗(yàn)需求,不知道是不是正則有關(guān)系。代碼如下

let fnArgCheckDutyPercent = (rule, value, callback) => {
      let regDecimal = /^[\d{1,3}]+(\.\d{1,2})?$/;
      if (!value) {
        callback(new Error('請(qǐng)輸入值'));
      } else if (!regDecimal.test(value)) {
        callback(new Error('請(qǐng)輸入至多兩位小數(shù)的百位以內(nèi)正數(shù)'));
      } else {
        callback();
      }
    };
{ validator: fnArgCheckDutyPercent, trigger: 'blur' }
回答
編輯回答
兔囡囡

一看正則就是錯(cuò)誤的

2018年5月15日 04:26
編輯回答
愿如初

第一位大佬已經(jīng)提出問(wèn)題了,
regDecimal = /^[d{1,3}]+(.d{1,2})?$/
改成:regDecimal = /^d+(.d{1,2})?$/

clipboard.png

2017年7月1日 01:11
編輯回答
安若晴

問(wèn)題已經(jīng)解決,是因?yàn)樵趖emplate模版中的model加入了number修飾符,123.會(huì)自動(dòng)轉(zhuǎn)換為123

2017年1月29日 22:39