Vue中輸入框僅支持?jǐn)?shù)字輸入的四種方法
方法 1: 使用 @input 事件和正則表達(dá)式
通過(guò)監(jiān)聽(tīng) @input 事件并使用正則表達(dá)式來(lái)驗(yàn)證輸入,只允許輸入數(shù)字。
<template>
<div>
<input type="text" v-model="inputValue" @input="validateInput" />
</div>
</template>
<script>
export default {
data() {
return {
inputValue: ''
};
},
methods: {
validateInput() {
// 只允許輸入數(shù)字
this.inputValue = this.inputValue.replace(/[^0-9]/g, '');
}
}
};
</script>
方法 2: 使用 @keypress 事件
通過(guò)監(jiān)聽(tīng) @keypress 事件來(lái)限制輸入,只允許輸入數(shù)字。
<template>
<div>
<input type="text" @keypress="allowOnlyNumbers" />
</div>
</template>
<script>
export default {
methods: {
allowOnlyNumbers(event) {
const char = String.fromCharCode(event.which);
// 允許輸入數(shù)字(0-9)
if (!/[0-9]/.test(char)) {
event.preventDefault(); // 阻止輸入
}
}
}
};
</script>
方法 3: 使用 @keydown 事件
使用 @keydown 事件來(lái)阻止輸入非數(shù)字字符。
<template>
<div>
<input type="text" @keydown="allowOnlyNumbers" />
</div>
</template>
<script>
export default {
methods: {
allowOnlyNumbers(event) {
// 允許的鍵碼:0-9
if (event.key < '0' || event.key > '9') {
event.preventDefault(); // 阻止輸入
}
}
}
};
</script>
方法 4: 使用 type=“number” 和 min 屬性
如果你使用 type=“number”,可以通過(guò)設(shè)置 min 屬性來(lái)禁止負(fù)數(shù)輸入,但這仍然允許用戶輸入小數(shù)。為了完全禁止小數(shù)和符號(hào),結(jié)合 @input 事件進(jìn)行驗(yàn)證。
<template>
<div>
<input type="number" min="0" @input="validateInput" />
</div>
</template>
<script>
export default {
methods: {
validateInput(event) {
const value = event.target.value;
// 只允許輸入數(shù)字
if (!/^\d*$/.test(value)) {
event.target.value = value.replace(/[^0-9]/g, '');
}
}
}
};
</script>
以上方法可以有效地禁止用戶在 Vue 中的輸入框中輸入非數(shù)字字符。選擇適合你需求的方法來(lái)實(shí)現(xiàn)輸入限制。
總結(jié)
到此這篇關(guān)于Vue中輸入框僅支持?jǐn)?shù)字輸入的文章就介紹到這了,更多相關(guān)Vue輸入框僅支持?jǐn)?shù)字輸入內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- vue如何設(shè)置輸入框只能輸入數(shù)字且只能輸入小數(shù)點(diǎn)后兩位,并且不能輸入減號(hào)
- vue elementui 動(dòng)態(tài)追加下拉框、輸入框功能
- 基于vue3實(shí)現(xiàn)一個(gè)簡(jiǎn)單的輸入框效果
- Vue中禁止編輯的常見(jiàn)方法(以禁止編輯輸入框?yàn)槔?
- vue之input輸入框防抖debounce函數(shù)的使用方式
- vue實(shí)現(xiàn)輸入框只允許輸入數(shù)字
- vue3+elementUI實(shí)現(xiàn)懸浮多行文本輸入框效果
- 基于vue+h5實(shí)現(xiàn)車(chē)牌號(hào)輸入框功能(demo)
相關(guān)文章
Vue中使用elementui與Sortable.js實(shí)現(xiàn)列表拖動(dòng)排序
這篇文章主要為大家詳細(xì)介紹了Vue中使用elementui與Sortable.js實(shí)現(xiàn)列表拖動(dòng)排序,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04
ElementPlus 自定義封裝 el-date-picker 的快捷功能示例詳解
文章討論了用戶對(duì)官網(wǎng)提供的案例不滿足快捷功能需求的情況,建議在外部自定義組件中導(dǎo)入并使用快捷內(nèi)容,以滿足用戶需求,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2024-12-12
elementui之el-table如何通過(guò)v-if控制按鈕顯示與隱藏
這篇文章主要介紹了elementui之el-table如何通過(guò)v-if控制按鈕顯示與隱藏問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11
vue項(xiàng)目依賴檢查depcheck問(wèn)題
這篇文章主要介紹了vue項(xiàng)目依賴檢查depcheck問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07
vue項(xiàng)目動(dòng)態(tài)設(shè)置頁(yè)面title及是否緩存頁(yè)面的問(wèn)題
這篇文章主要介紹了vue項(xiàng)目動(dòng)態(tài)設(shè)置頁(yè)面title及是否緩存頁(yè)面的問(wèn)題,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-11-11
詳解Vue中子組件修改父組件傳過(guò)來(lái)的值的三種方式
這篇文章主要為大家詳細(xì)介紹了Vue中子組件修改父組件傳過(guò)來(lái)的值的三種方式,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以參考一下2024-12-12

