JS函数只允许输入字母和空格
JS function to allow enter only letters and white spaces
>我需要一个jquery或js函数只允许输入字母和空格。提前谢谢。
页:
<p:inputText onkeypress="onlyLetter(this)">
功能:
function onlyLetter(input){
$(input).keypress(function(ev) {
var keyCode = window.event ? ev.keyCode : ev.which;
// code
});
}
以下代码仅允许 a-z、A-Z 和空格。
.HTML
<input id="inputTextBox" type="text" />
jQuery
$(document).on('keypress', '#inputTextBox', function (event) {
var regex = new RegExp("^[a-zA-Z ]+$");
var key = String.fromCharCode(!event.charCode ? event.which : event.charCode);
if (!regex.test(key)) {
event.preventDefault();
return false;
}
});
注意:键盘事件,自 2020 年 1 月 1 日起已弃用
只需使用要禁用或阻止工作的键/数字的 ascii 代码(十进制值)。ASCII 表 .
.HTML:
<input id="inputTextBox" type="text" />
j查询 :
$(document).ready(function(){
$("#inputTextBox").keydown(function(event){
var inputValue = event.which;
// allow letters and whitespaces only.
if(!(inputValue >= 65 && inputValue <= 120) && (inputValue != 32 && inputValue != 0)) {
event.preventDefault();
}
});
});
jsFiddle 演示
首先,我在jQuery方面几乎没有经验,我将提供一个普通的javascript示例。在这里:
document.getElementById('inputid').onkeypress=function(e){
if(!(/[a-z ]/i.test(String.fromCharCode(e.keyCode))) {
e.preventDefault();
return false;
}
}
调整Ashad Shanto回答了一下。请注意,如果使用脚本,则无法键入 y 和 z。您必须将输入值从 120 更改为 123。以下是 ASCII 表参考: http://ee.hawaii.edu/~tep/EE160/Book/chap4/subsection2.1.1.1.html 使用以下脚本键入所有字母、空格和退格键。
<script>
$(document).ready(function(){
$("#inputTextBox").keypress(function(event){
var inputValue = event.which;
// allow letters and whitespaces only.
if(!(inputValue >= 65 && inputValue <= 123) && (inputValue != 32 && inputValue != 0)) {
event.preventDefault();
}
console.log(inputValue);
});
});
</script>
您可以使用我从这篇文章中获取的这个简单方法
<input type="text" name="fullName" onkeypress="return (event.charCode > 64 &&
event.charCode < 91) || (event.charCode > 96 && event.charCode < 123)"
placeholder="Full Name">
jQuery
var letters = /^[A-Za-z ]+$/;
var city_input="";
$(document).ready(function(){
$("#city_name").on("input", function(){
var city_value=$(this).val();
if(city_value==="")
{
city_input=city_value;
}
else if(city_value.match(letters)===null){
$(this).val(city_input);
}
else{
city_input=city_value;
}
});
});
这是您可以轻松理解的代码,并且可以针对任何字符char
异常进行修改。
我包括BACKSPACE
的例外.
同样,您可以通过在语句中包含键代码来给出例外。
var c= ((e.which>=65 && e.which<91) || (e.which==8 /**Here 8 if for the Backspace**/) || (e.which=="your key code"))
https://gist.github.com/SathishSaminathan/e3c509243ead20fcae26c87fdd6f78fd
<!DOCTYPE html>
<html>
<head>
<script
src="https://code.jquery.com/jquery-3.4.1.js"></script>
</head>
<body>
<br/>
Enter Only Alphabate: <input id="txtName" name="lname">
<script>
$('#txtName').keypress(function (e) {
var regex = new RegExp("^[a-zA-Z 's]+$");
var str = String.fromCharCode(!e.charCode ? e.which : e.charCode);
if (regex.test(str)) {
return true;
}
else
{
e.preventDefault();
alert('Please Enter Alphabate');
return false;
}
});
</script>
</body>
</html>
对我来说
,在 z 之后在输入标签中添加一个空格是有效的。
<p:inputText onkeydown="return /[a-z ]/i.test(event.key)">
function ValidateAlpha(evt) {
var keyCode = (evt.which) ? evt.which : evt.keyCode if (
(keyCode < 65 || keyCode > 90) &&
(keyCode < 97 || keyCode > 123) &&
keyCode != 32 &&
keyCode != 39
)
相关文章:
- 如何为jQuery屏蔽输入插件创建一个允许字母数字、空格和重音字符的掩码
- 当没有文本输入聚焦时检测空格键按下
- 简单的Javascript方式,在输入字段的每5位数字后添加一个空格
- Javascript 只允许输入区域中有空格
- 为什么不'当用户输入空格或字符太多/不够时,此函数会发出window.alert
- 我想限制用户在jquery中输入文本后面的空格,如果它在文本后面,我会删除空格
- 阻止ONLY空格输入from文本字段
- 使用简单的角度滤波器来替换输入字符串中某些字符串的所有出现,而不考虑大小写和空格
- 当有空格或没有输入值时发出Javascript警报
- JS函数只允许输入字母和空格
- 获取标签文本并将其设置为输入值[为什么输入值只获取空格前的文本?
- jquery按键在输入文本限制中,我希望它只允许A-Z和空格,但我的代码不允许“Y”和“Z”
- 动态验证输入框是否有空格或是否为空
- 在输入中需要两个用空格分隔的单词
- 使用 PHP 填充引导输入 - 字符串变量中出现空格错误
- 无法从输入字段中获取空格
- 输入表单中不允许有空白字符/空格
- 如何在数组的元素之间插入空格,该数组作为 HTML 表单的输入读取
- 如何验证字母数字输入之间的空格
- 使用jquery修剪输入而不阻塞空格输入