JQueryの検証プラグインを使用して、アルファベット文字のみを受け入れるフィールドを検証したいのですが、定義されたルールはないようです。私はグーグルを検索しましたが、有用なものは何も見つかりませんでした。
何か案は?
あなたの助けに感謝。
追加のメソッドファイルを含める場合、1.7の現在のファイルは次のとおりです。 http://ajax.Microsoft.com/ajax/jquery.validate/1.7/additional-methods.js
lettersonly
ルールを使用できます:)追加のメソッドは、ダウンロードするZipの一部です。常に最新の here を見つけることができます。
以下に例を示します。
_$("form").validate({
rules: {
myField: { lettersonly: true }
}
});
_
追加のメソッドはそれぞれ独立しているため、その特定のメソッドを含めることができます。これを.validate()
呼び出しの前に配置するだけです。
_jQuery.validator.addMethod("lettersonly", function(value, element) {
return this.optional(element) || /^[a-z]+$/i.test(value);
}, "Letters only please");
_
注意してください、
jQuery.validator.addMethod("lettersonly", function(value, element)
{
return this.optional(element) || /^[a-z," "]+$/i.test(value);
}, "Letters and spaces only please");
[a-z、 ""]コンマと引用符を追加すると、入力ボックスにスペース、コンマ、引用符を含めることができます。
スペース+テキストの場合、次のようにします。
jQuery.validator.addMethod("lettersonly", function(value, element)
{
return this.optional(element) || /^[a-z ]+$/i.test(value);
}, "Letters and spaces only please");
[a-z]これにより、テキストだけでなくスペースも許可されます。
.................................................. ..........................
また、メッセージに既にメッセージがある場合は、「文字とスペースのみください」というメッセージは不要です。
messages:{
firstname:{
required: "Enter your first name",
minlength: jQuery.format("Enter at least (2) characters"),
maxlength:jQuery.format("First name too long more than (80) characters"),
lettersonly:jQuery.format("letters only mate")
},
アダム
ニックの答えへのほんの小さな追加です(これはうまくいきます!):
たとえば、文字間にスペースを許可する場合は、フルネームの文字のみを入力するように制限できますが、スペースも許可する必要があります-以下のようにスペースをカンマでリストしてください。同様に、他の特定のキャラクターを許可する必要がある場合:
jQuery.validator.addMethod("lettersonly", function(value, element)
{
return this.optional(element) || /^[a-z," "]+$/i.test(value);
}, "Letters and spaces only please");
ニックとアダムの両方の答えは本当にうまくいきます。
á
やç
などのラテン文字を許可したい場合は、メモを追加したいと思います。
jQuery.validator.addMethod('lettersonly', function(value, element) {
return this.optional(element) || /^[a-z áãâäàéêëèíîïìóõôöòúûüùçñ]+$/i.test(value);
}, "Letters and spaces only please");
文字とスペースを許可する
jQuery.validator.addMethod("lettersonly", function(value, element) {
return this.optional(element) || /^[a-z\s]+$/i.test(value);
}, "Only alphabetical characters");
$('#yourform').validate({
rules: {
name_field: {
lettersonly: true
}
}
});
$('.AlphabetsOnly').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();
return false;
}
});