我使用了 javascript 来防止在字段中输入特定字符。下面的函数可以防止输入数字。它还会在输入时检查每个字符,如果是数字则阻止输入。
function LettersOnly(e) {
var key = window.event ? e.keyCode : e.which;
var keychar = String.fromCharCode(key);
var reg = new RegExp("[A-Za-z + ']");
return reg.test(keychar);
}
我想做类似的事情,阻止用户输入数字,但仅限于它是第一个字符。我该怎么做?上面的代码是否正确?为了实现这一目标,我的正则表达式应该是什么样子?
预先感谢您的帮助!
最佳答案
正如我在评论中所说,很难阻止输入字段的所有操作方式(拖/放、粘贴、剪切、删除),因此您最终需要在使用该字段之前验证该字段.
也就是说,如果您想阻止在字段的第一个字符中输入数字,您可以使用以下命令:
document.getElementById("test").addEventListener("keypress", function(e) {
var key = e.which || e.keyCode;
if (this.selectionStart === 0) {
if (key > 48 && key < 57) {
e.preventDefault();
}
}
});
关于javascript - 在 JavaScript 中,如何防止在表单字段中输入数字作为第一个字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25253892/