如何使用 jQuery 验证器验证输入的电子邮件列表?
How to validate input email list using jQuery validator?
我有输入字段来输入电子邮件列表,例如 test1@gmail.com
、test2@gmail.com
、. . . , etc@gmail.com
我想用逗号分隔这些电子邮件。我使用 jQuery validator
插件。
我该怎么做?
谢谢。
您可以通过模式匹配验证它,如下代码
<input type="email" multiple pattern="^([\w+-.%]+@[\w-.]+\.[A-Za-z]{2,4},*[\W]*)+$" value="">
<input type="submit" value="Go">
演示:http://jsfiddle.net/j1jzL8xd/
验证 jQuery
html:
<form id="form" method="post">
Enter email:<input type="text" name="emails" id="emails" class="emails"><br />
<input type="submit" value="submit">
</form>
Jquery:
jQuery.validator.addMethod(
"multiemails",
function(value, element) {
if (this.optional(element)) // return true on optional element
return true;
var emails = value.split(/[,]+/); // split element by ,
valid = true;
for (var i in emails) {
value = emails[i];
valid = valid &&
jQuery.validator.methods.email.call(this, $.trim(value), element);
}
return valid;
},
jQuery.validator.messages.multiemails
);
$("#form").validate({
rules: {
emails: { required: true, multiemails: true }
},
messages: {
emails: {
required: "Email required",
multiemails: "finish typing email and dont end with comma"
}
}
});
我有输入字段来输入电子邮件列表,例如 test1@gmail.com
、test2@gmail.com
、. . . , etc@gmail.com
我想用逗号分隔这些电子邮件。我使用 jQuery validator
插件。
我该怎么做?
谢谢。
您可以通过模式匹配验证它,如下代码
<input type="email" multiple pattern="^([\w+-.%]+@[\w-.]+\.[A-Za-z]{2,4},*[\W]*)+$" value="">
<input type="submit" value="Go">
演示:http://jsfiddle.net/j1jzL8xd/
验证 jQuery
html:
<form id="form" method="post">
Enter email:<input type="text" name="emails" id="emails" class="emails"><br />
<input type="submit" value="submit">
</form>
Jquery:
jQuery.validator.addMethod(
"multiemails",
function(value, element) {
if (this.optional(element)) // return true on optional element
return true;
var emails = value.split(/[,]+/); // split element by ,
valid = true;
for (var i in emails) {
value = emails[i];
valid = valid &&
jQuery.validator.methods.email.call(this, $.trim(value), element);
}
return valid;
},
jQuery.validator.messages.multiemails
);
$("#form").validate({
rules: {
emails: { required: true, multiemails: true }
},
messages: {
emails: {
required: "Email required",
multiemails: "finish typing email and dont end with comma"
}
}
});