简单地说,是否可以使用Parsley验证多个电子邮件地址(逗号或分号分隔)的单个HTML输入字段?
我无法通过他们的文档找到它,所以我试图看看是否有任何我可能遗失的东西。
如果情况不可能,那么我愿意接受最佳替代解决方案,以结合我目前对其他领域的Parsley验证。
感谢您的意见。
答案 0 :(得分:0)
您可以使用多个电子邮件地址,您必须在输入元素示例中添加此属性 multiple =“multiple”:
<input type="email" multiple />
但我没有使用Parsley
这是指向多个电子邮件地址的示例模式的网站链接 example
答案 1 :(得分:0)
我提出的验证逗号分隔的电子邮件输入与parsleyjs的技巧是为文本字段创建custom validator并依赖browser's native support for validating multiple emails:
<input type="text" name="emails" required data-parsley-multipleemail>
(nb:我们没有使用<input type="email" multiple />
因此此解决方案不会降级为正确的电子邮件字段。)
Parsley在可用时依赖浏览器的原生验证器,因此我们也会这样做。 (仅限using regexp for email validation is a pandoras box)在加载Parsley.js之前,定义一个自定义验证器,如下所示:
window.ParsleyConfig = {
validators: {
multipleemail: {
fn: function (value) {
return $('<input type="email" multiple>').val(value)[0].checkValidity();
},
priority: 32
}
}
};
这是做什么的
[0]
为我们提供原生的javascript元素(即没有jquery)最后,在之后插入此代码,然后加载parsley为此验证器创建自定义验证消息(英文):
window.ParsleyValidator && window.ParsleyValidator.addMessage('en', 'multipleemail', 'Invalid email(s)');