獲取input的value 要求用戶輸入不符合規格的時候不予顯示;例如只能數輸入小數點后兩位 常用的想法是 輸入到第三位的時候刪掉后面那位,比如我現在用的vue 通過v-model獲取到input值 然后@input過濾一下 在賦值給v-model的綁定值,但是這個過濾的過程 會有一個刪除的閃爍過程,就是先渲染到屏幕上在消失,請問各位有什么好方法處理嗎 不限于vue 謝謝了
1 回答
慕俠2389804
TA貢獻1719條經驗 獲得超6個贊
用keyup/input事件
原生是這樣的:
let inp = document.querySelector("input");
inp.onkeyup = inp.oninput = function(ev) { if (inp.value.length >= 3) {
inp.value = inp.value.substr(0, 3); } };
vue 的話,不用v-model 綁定,改為:
<template>
<input :value ="inptxt" @input="input"></template>
<script>
exports default {data(){ return { inptxt:"" } }, methods: { input(){ if(this.inptxt.length > 3) { this.inptxt = this.inptxt.substr(0,3); } } }}
</script>
添加回答
舉報
0/150
提交
取消
