如何仅使用rails haml形式在text_field上输入字符串。
.field
= f.label "agent_name"
= f.text_field :agent_name, :required => true,:id=>"agent_name_validation"
$("#agent_name_validation").keypress(function(event) {
var string = /^[a-z]+$/i;
if(event.which != string){
return false;
}
});
答案 0 :(得分:0)
使用以下Jquery函数从文本字段中删除数字
$("#agent_name_validation").keyup(function(e) {
// Our regex
// a-z => allow all lowercase alphabets
// A-Z => allow all uppercase alphabets
var regex = /^[a-zA-Z]+$/;
// This is will test the value against the regex
// Will return True if regex satisfied
if (regex.test(this.value) !== true)
//alert if not true
//alert("Invalid Input");
// You can replace the invalid characters by:
this.value = this.value.replace(/[^a-zA-Z]+/, '');
});
答案 1 :(得分:0)
使用此脚本
$("#agent_name_validation").keypress(function(event){
var inputValue = event.charCode;
if(!(inputValue >= 65 && inputValue <= 120) && (inputValue != 32 && inputValue != 0)){
event.preventDefault();
}
});
答案 2 :(得分:0)
如果输入的字符不是RegExp.prototype.test() [a-z]
之间的字符串,则可以使用regular expression删除输入的字符:
请注意,这只会检查小写字符:
$('#agent_name_validation').on('input', function () {
if (!/[a-z]$/.test(this.value)) {
this.value = this.value.slice(0, -1);
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input id="agent_name_validation" type="text">
答案 3 :(得分:0)
尝试添加jQuery验证gem https://github.com/meowsus/jquery-validation-rails 进行大量验证的简便方法 所有验证已准备就绪,您只需使用 他们准备好的方法
myField:{仅字母:true}
就完成了。 祝你好运。
答案 4 :(得分:0)
@Suman Das
尝试此代码,仅在输入文本字段中输入字符串:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>Javascript Demo</title>
</head>
<body>
<form action="/data.php" method="get">
<input type="text" name="fullName" onkeypress="return (event.charCode > 64 &&
event.charCode < 91) || (event.charCode > 96 && event.charCode < 123)"
placeholder="Full Name">
<input type="submit">
</form>
</body>
</html>
我希望以上代码对您有用。
谢谢。