1. 程式人生 > >兩位小數的正則驗證和整數的正則

兩位小數的正則驗證和整數的正則

let PriceNumberInput = document.getElementById('priceInput')
let priceNumber = PriceNumberInput.value
let regStrs = [
   ['[^\\d\\.]+$', ''], // 禁止錄入任何非數字和點
   ['\\.(\\d?)\\.+', '.$1'], // 禁止錄入兩個以上的點
   ['^(\\d+\\.\\d{2}).+', '$1'] // 禁止錄入小數點後兩位以上
]
if(priceNumber !== '' && priceNumber !== 0){
   for (let i = 0; i < regStrs.length; i++) {
      let reg = new RegExp(regStrs[i][0])
      priceNumber = priceNumber.replace(reg, regStrs[i][1])
   }
}
if(PriceNumberInput.value !== priceNumber){
    PriceNumberInput.value = priceNumber
}

1. vue專案可將input的type設定為text

2. 測試element-ui的el-input嘗試這樣強制修改input的value屬性失敗

3.  v-model雙向繫結的input輸入框,會出現priceNumber的值改變,檢視沒進行改變,故需要增加input的value是否與priceNumber的值相等,如不等可手動進行修改

---------------------------------         整數         ---------------------------

 
if(num !== '' && num !== 0){
   num = num.replace(/[^\d]/g, '')
 }
 if (numInput.value !== num) {
   numInput.value = num
 }

注意:

1. input的type需為text