[英]Jquery Validation: allow only alphabets and spaces
我的驗證只接受字母。 我也想要允許空格。
$.validator.addMethod("alpha", function(value, element) {
return this.optional(element) || value == value.match(/^[a-zA-Z]+$/);
});
這里需要做哪些改變?
而不是下面的正則表達式:
/^[a-zA-Z]+$/
用這個:
/^[a-zA-Z\s]+$/
這也將占用空間。
只需在正則表達式中留一個空格或使用\\s
:
$.validator.addMethod("alpha", function(value, element) {
return this.optional(element) || value == value.match(/^[a-zA-Z\s]+$/);
// -- or leave a space here ^^
});
jQuery.validator.addMethod("lettersonlys", function(value, element) {
return this.optional(element) || /^[a-zA-Z ]*$/.test(value);
}, "Letters only please");
使用模式: /^[a-zA-Z ]*$/
你的驗證是正確的。 你只需要改變正則表達式/^[a-zA-Z ]*$/
$.validator.addMethod("alpha", function(value, element) {
return this.optional(element) || value == value.match(/^[a-zA-Z ]*$/);
});
**
我在上面嘗試過,但是空間是上面給定的正則表達式 /^[a-zA-Z\\s]+$/ 和 /^[a-zA-Z]+$/ 的問題。 下面為我工作:
**
$('.name-val').keypress(function (e) {
var regex = new RegExp("^[a-zA-Z ]+$");
var strigChar = String.fromCharCode(!e.charCode ? e.which : e.charCode);
if (regex.test(strigChar)) {
return true;
}
return false
});
請使用這些模式進行驗證。
var pattern = /^[a-zA-Z ]+$/;
if(!pattern.test(name) && name !=''){
return false;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.