Quiero validar una cadena que puede ser un correo electrónico o varios correos electrónicos separados por comas.Validar múltiples correos electrónicos Coma Separados con javascript
Por ejemplo:
[email protected] -> TRUE
factura -> FALSO
bill.gates @ microsoft.com, steve.jobs @ apple.com" -> TRUE
bill.gates @ microsoft.com, steve.jobs @ apple.com, sacudida "-> false
sacudida, bill.gates @ microsoft.com, steve.jobs @ apple.com" -> false
vine con el siguiente código que funciona con los casos de prueba.
function validateEmail(field) {
var regex=/\b[A-Z0-9._%+-][email protected][A-Z0-9.-]+\.[A-Z]{2,4}\b/i;
return (regex.test(field)) ? true : false;
}
function validateMultipleEmailsCommaSeparated(value) {
var result = value.split(",");
for(var i = 0;i < result.length;i++)
if(!validateEmail(result[i]))
return false;
return true;
}
¿Es esta la forma más rápida de hacerlo? ¿Qué sucede si quiero permitirlo? y, como separador?
Edición sugerida: "... debería verificar en el lado del cliente si la dirección contiene ** uno y solo uno ** @ ..." (sin embargo, estoy suponiendo que "@" no está permitido en el local -parte ??) – Kristen
@Kristen: '@' está permitido en cadenas entre comillas, pero solo allí; Nunca he visto las cadenas de comillas usadas, aunque podrían proporcionar una manera fácil de confundir los robots de spam; uno también debe tener en cuenta que los siguientes caracteres son válidos incluso sin citar:! # $% & '* + -/=?^_ '{|} ~ – Christoph
Por cierto, creo que una vez leí que incluso había personas que usaban el correo -address con un dominio ccTLD en bruto después de la '@'; No recuerdo qué país, aunque ... – Christoph