Задать вопрос

Почему когда я вешаю запрос на форму, то в ответ приходит error, а когда на див, то success?

Здравствуйте. Почему когда я вешаю запрос на форму, то в ответ приходит error, а когда на див, то success?

p.s с ajax знаком первый день, потому хотелось бы получить развернутый ответ. Спасибо.

Форма:
<form action="" method="post" class="login_form">
    <input class="login" name="login" type="text" placeholder="Введите логин">
    <input class="password" name="password" type="password" placeholder="Введите пароль">
    <input class="log_form_submit" name="authorization" type="submit" placeholder="отправить">
</form>


А вот див:
<div class="knopka">Нажми меня</div>

Если мы обращаемся к диву, то соответственно $(".log_form_submit") меняем на $(".knopka")
Обработчик:
$(document).ready(function() {
    $(".log_form_submit").click(function(){
       $.ajax({
           type: 'POST',
           url: ajaxLogIn.url,
           data: {
               test: 'Тестовый запрос',
               action: 'login_me'
           },
           // beforeSubmit: '',
           success: function(res){
               console.log(res);
           },
           error: function(){
               console.log('Ошибка');
           }
       })
    })
});


function.php
wp_localize_script('routeuser.js', 'ajaxLogIn', ['url' => admin_url( 'admin-ajax.php') ]);
add_action( 'wp_ajax_login_me', 'login_me');
add_action( 'wp_ajax_nopriv_login_me', 'login_me');

function login_me(){
      if(isset($_POST['test'])){
        echo $_POST['test'] . ' ';
    }
    wp_die('Запрос завершен');
}
  • Вопрос задан
  • 159 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
есть предположение что при клике на кнопку срабатывает форма и перезагружается страничка, так как нужно "выключить" ее обычное поведение если вы работаете с аяксом. Смотрите как использовать preventDefault(). У дива такого поведения нет, по этому все ок. Есть вариант убрать type="submit" из кнопки, тогда скорее всего все будет нормально работать без дополнительных танцев с бубном.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы