Sto usando il seguente codice (con jQuery Plugin di convalida) per convalidare un indirizzo email:
$(".schedule-tour-form").validate({
rules: {
Email: {
required: true,
email: true
}
},
});
<input id="email" name="Email" class="email" type="email" placeholder="name@email.com" />
Il problema è che consente ancora e-mail senza suffissi di dominio. Ad esempio, convalida "test @ test" Come richiedere un suffisso di dominio?
risposte:
1 per risposta № 1Il pagina ufficiale del plugin, anche prendere in considerazione test@test
come una mail valida, quindi suppongo che questo sia inteso. Potresti creare una nuova regola, con un modello regex rigoroso, come suggerito Qui.
//custom validation rule
$.validator.addMethod("customemail",
function(value, element) {
return /^([a-zA-Z0-9_.-+])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/.test(value);
},
"Sorry, I"ve enabled very strict email validation"
);
Quindi alle tue regole aggiungi:
rules: {
email: {
required: {
depends:function(){
$(this).val($.trim($(this).val()));
return true;
}
},
customemail: true
},