Я работаю над веб-сайтом, пытаюсь исправить код предыдущего разработчика и с трудом справляюсь с модальной ajax формой входа.
Когда я нажимаю кнопку «Войти», открывается модал с упоминанием ввода пользователя, ввода пароля и кнопки подключения. когда я ввожу правильную информацию и нажимаю на кнопку, на стороне клиента ничего не происходит, и модальное окно остается открытым на экране. НО, когда я повторяю вход в систему, я получаю ярлык в модале, указывающий, что я уже вошел в систему.
Фактически, вход был выполнен. Окно просто не ссылается на sh, и успешное соединение не приводит к возврату на текущую страницу (например, «домашнюю» или на другую страницу, на которой я сейчас нахожусь).
Есть у кого-нибудь идея? Заранее спасибо
(я поставил код JS ниже)
// Run our login form ajax
$('#modal-login #form-login').on('submit', function(e) {
// Stop the form from submitting so we can use ajax.
e.preventDefault();
// Check what form is currently being submitted so we can return the right values for the ajax request.
var form_id = $(this).parent().attr('id');
// Remove any messages that currently exist.
$('.modal-login-content > p.message').remove();
// Check if we are trying to login. If so, process all the needed form fields and return a faild or success message.
if ( form_id === 'login' ) {
$.ajax({
type: 'POST',
dataType: 'json',
url: modal_login_script.ajax,
data: {
'action' : 'ajaxlogin', // Calls our wp_ajax_nopriv_ajaxlogin
'username' : $('#form-login #login_user').val(),
'password' : $('#form-login #login_pass').val(),
'rememberme' : ($('#form-login #rememberme').is(':checked'))?"TRUE":"FALSE",
'login' : $('#form-login input[name="login"]').val(),
'security' : $('#form-login #security-login').val()
},
beforeSend : function(){
$('.ml-modal' ).addClass( 'is-active' );
},
success: function(results) {
// Check the returned data message. If we logged in successfully, then let our users know and remove the modal window.
if(results.loggedin === true) {
$('.modal-login-content > h2').after('<p class="message success"></p>');
$('.modal-login-content > p.message').text(results.message).show();
$('#overlay, .login-popup').delay(5000).fadeOut('300m', function() {
$('#overlay').remove();
});
window.location.href = updateQueryStringParameter( modal_login_script.registration_redirect, 'nocache', ( new Date() ).getTime() );
} else {
$('.modal-login-content > h2').after('<p class="message error"></p>');
$('.modal-login-content > p.message').text(results.message).show();
}
},
complete : function(){
$('.ml-modal' ).removeClass( 'is-active' );
}
});
} else {
// if all else fails and we've hit here... something strange happen and notify the user.
$('.modal-login-content > h2').after('<p class="message error"></p>');
$('.modal-login-content > p.message').text('Please refresh your window and try again.');
}
});