HTML5是否有任何类型的文本字段屏蔽,还是我还要陷阱onkeydown
等?
jbabey是正确的 - "屏蔽",如阻止某些非法字符,而不是隐藏所输入的内容.
我发现最好的(最简单和最可靠)方法是陷阱onkeyup
然后只运行正则表达式替换文本字段的值,删除任何非法字符.
这有一些优点:
但它的主要缺点是它在删除之前会短暂地显示出键入的字符,这使得它看起来非常hackish和unprofessional.
我正在尝试创建一个输入字段,用户只能输入数字.这个功能对我来说已经很好了:
$('#p_first').keyup(function(event){
if(isNaN(String.fromCharCode(event.which))){
var value = $(this).val();
$(this).val(value.substr(0,value.length-1));
}
});
Run Code Online (Sandbox Code Playgroud)
但问题是,当用户持有带有角色的键时,功能键盘没有触发....任何想法我怎么能禁止这个?
我需要创建一个验证来防止用户在文本框中输入数字。我找到了一些使用本机 JavaScript 的解决方案,但它在我这边不起作用。
在我的文本框中我有这个触发器
v-on:keyup="preventNumericInput($event)">
Run Code Online (Sandbox Code Playgroud)
在我的 Vue 上,我在我的类上创建了一个函数
preventNumericInput($event) {
console.log($event.keyCode); //will display the keyCode value
console.log($event.key); //will show the key value
var keyCode = ($event.keyCode ? $event.keyCode : $event.which);
if (keyCode > 47 && keyCode < 58) {
$event.preventDefault();
}
}
Run Code Online (Sandbox Code Playgroud)
你能帮我解决这个问题吗?