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使用Vuex一步步封裝并使用store全過(guò)程
這篇文章主要介紹了Vue使用Vuex一步步封裝并使用store全過(guò)程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-01-01
vscode創(chuàng)建vue項(xiàng)目報(bào)錯(cuò)的問(wèn)題解決
本文主要介紹了vscode創(chuàng)建vue項(xiàng)目報(bào)錯(cuò)的問(wèn)題解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-07-07
Vue登錄后添加動(dòng)態(tài)路由并跳轉(zhuǎn)的實(shí)踐分享
這篇文章講給大家詳細(xì)介紹一下Vue如何實(shí)現(xiàn)登錄后添加動(dòng)態(tài)路由并跳轉(zhuǎn),文章通過(guò)代碼示例介紹的非常詳細(xì),對(duì)我們的學(xué)習(xí)或工作有一定的的幫助,需要的朋友可以參考下2023-07-07
詳解vue2.0監(jiān)聽(tīng)屬性的使用心得及搭配計(jì)算屬性的使用
這篇文章主要介紹了vue2.0之監(jiān)聽(tīng)屬性的使用心得及搭配計(jì)算屬性的使用,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-07-07
vue實(shí)現(xiàn)原理this.$message實(shí)例詳解
這篇文章主要介紹了vue實(shí)現(xiàn)原理this.$message實(shí)例詳解,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2024-03-03

