vue input輸入監聽
阿新 • • 發佈:2021-01-23
技術標籤:jsVUE JS移動端vuejavascripthtml
<input
class="flex_1"
type="number"
placeholder="請輸入"
v-model="v.score_num"
v-on:input="onCount($event,v)"
onblur="if(value=='')value=0"
/>
methods:{
onCount(obj,res){
// console.log(obj,res)
if(parseFloat(obj.target.value)>parseFloat(res.default_score)){
// 輸入框展示
obj.target.value = res.default_score
// 真正值修改(這裡必須賦值不然展示和實際值不一樣)
res.score_num = res.default_score
}
if(parseFloat(obj.target.value)<0)obj.target.value=0
}
}
動態判斷
注意:這裡不能用縮寫(@:input),必須(v-on:input)
v-on:input=“onCount($event,v)”
$event:元素本身,v:動態資料
用v-on:input需把本身value值轉成數值型才能判斷
如果不是動態判斷可不用上面寫法
<input
class="flex_1"
type="number"
placeholder="請輸入"
v-model="v.score_num"
oninput="if(value>100)value=100;if(value<0)value=0"
onblur="if(value=='')value=0"
/>
游標移開判斷,輸入為空則預設填充 0
οnblur=“if(value==’’)value=0”