我只想允许在表单字段中输入字母和数字。我使用正则表达式等尝试了很多变体,但我无法禁用空格键或任何特殊字符键。
这是我的代码的最新副本:
document.querySelector('#upperCase').addEventListener('keyup', function(e) {
console.log(this.value);
if (e.which == '32') return false;
this.value = this.value.toUpperCase();
});
#upperCase {
text-transform: uppercase;
}
<form>
<input id="upperCase" maxlength="10" name="upperCase" type="text">
</form>
是否可以只允许在输入文本框中键入字母和数字?
这是我的 jsfiddle:https://jsfiddle.net/bcjg7osr/29/
最佳答案
一种方法是在输入中使用 pattern 属性。 patter 属性的唯一问题是在提交表单之前它不会禁止空格,在这种情况下提交将不起作用并且将要求用户更改输入。这将只允许字母和数字。
<input pattern = "[A-Za-z0-9]" id="upperCase" maxlength="10" name="upperCase"
type="text">
关于javascript - 如何禁用或阻止 Web 表单上的空格键输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52192871/