У меня есть эта функция для восстановления пароля.
Я использую два случая, недействительный и успешный адрес электронной почты. Если я введу правильный адрес электронной почты в форме, я получу 2 сброса электронной почты. Если я ввожу более 1 недействительный адрес электронной почты, например. sdasd, а затем введите действительный адрес электронной почты. Я получу электронное письмо для сброса каждого введенного неверного адреса. Например, если я введу «sdsd» 5 раз, то действительное письмо я получу 7 писем сброса. Такое поведение очень странное, и я не могу понять, что не так. В php функция отправки имеет выход (); для каждого отправленного электронного письма и не может ввести l oop ..
function lostAjax(){
$(document).ready(function() {
$('#lostfrom').submit(function(e) {
e.preventDefault();
$.ajax({
type: "POST",
url: 'lost',
data: $(this).serialize(),
success: function(data)
{
if (data === 'send') {
sendModal();
}
if (data === 'invalid') {
shakeModalInvalid();
}
}
});
});
});
// shakeModal();
}
HTML
<div class="box">
<div class="content lostBox" style="display:none;">
<div class="form">
<form id="lostfrom" method="POST" html="{:multipart=>true}" data-remote="true" action="" accept-charset="UTF-8">
<input id="email" class="form-control" type="text" placeholder="Email" name="email">
<input class="btn btn-default btn-login" type="submit" value="Reset password" onclick="lostAjax()">
</form>
</div>
</div>
</div>