Здесь приведенный ниже код проверит правильность адреса электронной почты, если введенное письмо соответствует шаблону, на котором будет показан действительный адрес электронной почты. Я использовал keyup () событие я знаю, что оно отправит форму после сопоставления с шаблоном, потому что я включил onSub () в onCheck () . Но я хочу, чтобы document.otp.submit () должен работать только при нажатии на кнопку, но он должен работать только тогда, когда onCheck () удовлетворен.
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
</head>
<script type="text/javascript">
function onCheck() {
var pattern = /^\S+@\S+\.\S+$/;
var a=document.getElementById('email').value;
if (pattern.test(a)) {
document.getElementById('messages').style.color = 'green';
document.getElementById('messages').innerHTML = "valid email id";
onSub();
} else {
document.getElementById('messages').style.color = 'red';
document.getElementById('messages').innerHTML = "invalid email id";
}
}
function onSub(){
document.otp.submit();
}
</script>
<body style="align:center">
<form name="otp" action="Otp" method="get">
<label for="Email"><b>Email</b></label>
<input type="email" id="email" name="email" onkeyup="onCheck()" placeholder="Enter Email.." ><span id='messages'></span><br><br>
<button type='button' onclick="onSub()">Send OTP</button>
</form>
</body>
</html>