vue 的 input 中, 限制只能输入正数与负数,完整代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| <template> <el-input v-model="number" @input="onlyNbr1" @change="onlyNbr2"/> </template>
<script> data() { return { number: null } }, methods: { onlyNbr1(ipt) { let data = String(ipt) const char = data.charAt(0) data = data.replace(/[^\d]/g, '') if (char === '-') { data = '-' + data } this.number = data }, onlyNbr2() { const data = String(this.number) console.log(data === '-') if (data === '-') { this.number = null } } } }
|
如果有更好的实现方式,欢迎评论讨论。