I'm trying to verify if a string looks like a valid e-mail address, however the function is always returning false regardless of what I type
function looksLikeMail(str) {
var patt = new RegExp(/^(([^<>()\[\]\.,;:\s@\"]+(\.[^<>()\[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/i);
return patt.test(str);
}
var c1;
var c2;
var error = false;
c1 = document.getElementById("t8").value;
c2 = document.getElementById("t9").value;
if (document.getElementById("t8").value != "" || document.getElementById("t9").value != ""){
if (document.getElementById("t8").value != ""){
var validE;
validE = looksLikeMail((String)(t8));
if (!validE){
error = true;
alert("invalid email address");
}
}
HTML
<div class="form-row">
<label class="col align-self-center"> <b>email (at least one)</b></label>
</div>
<div class="form-row">
<div class="col-md-6 offset-md-3">
<label for="inputEmail4">email-1</label>
<input type="email" class="form-control" id="t8" placeholder="email">
</div>
<div class="col-md-6 offset-md-3">
<label for="inputEmail5">email-2</label>
<input type="email" class="form-control" id="t9" placeholder="email">
</div>
</div>