我想阻止在 Vue 的输入中写入特殊字符。
首先,我做了一个如下所示的函数。
blockSpecialChar(e) {
console.log(e.keyCode);
const k = e.keyCode;
return (
(k > 64 && k < 91) ||
(k > 96 && k < 123) ||
k == 8 ||
(k >= 48 && k <= 57)
);
}
我将它与下面的代码连接起来。
<input
type="test"
placeholder="phone"
v-model="pin.phoneNumber"
v-on:keypress.prevent="blockSpecialChar(e)"
/>
但是当我输入时,它显示“e 未定义”。我怎样才能正确地做到这一点?非常感谢您的阅读。
最佳答案
传递方法时不需要传递参数,
<input
type="test"
placeholder="phone"
v-model="pin.phoneNumber"
v-on:keypress.prevent="blockSpecialChar"
/>
这段代码现在应该可以工作了
blockSpecialChar(e) {
console.log(e.keyCode);
const k = e.keyCode;
return (
(k > 64 && k < 91) ||
(k > 96 && k < 123) ||
k == 8 ||
(k >= 48 && k <= 57)
);
}
关于javascript - 如何在vuejs中使用onkeypress,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58010743/