vue自定义指令el-input只能输入正整数
时间: 2023-10-09 11:04:39 浏览: 144
可以通过Vue自定义指令来实现只能输入正整数的功能。具体实现方式可以参考以下代码:
```javascript
// 注册一个只允许输入正整数的指令
Vue.directive('integer', {
// 当绑定的元素插入到 DOM 中时执行
inserted: function (el) {
// 限制输入非数字字符和小数点
el.addEventListener('keypress', function (event) {
var keyCode = event.keyCode ? event.keyCode : event.which;
if (keyCode < 48 || keyCode > 57) {
event.preventDefault();
}
});
// 限制粘贴非数字字符和小数点
el.addEventListener('paste', function (event) {
var value = event.clipboardData.getData('text/plain');
if (/\D/.test(value)) {
event.preventDefault();
}
});
}
});
```
然后在el-input元素上使用该指令即可:
```html
<el-input v-model="inputValue" v-integer></el-input>
```
这样就可以保证el-input中只能输入正整数了。
阅读全文