Ajax Отправить форму без перезагрузки страницы не работает - PullRequest
0 голосов
/ 06 декабря 2018

Я пытаюсь отправить форму без перезагрузки страницы с помощью Ajax, но до сих пор не добился успеха, она все еще перезагружает страницу.На index.php у меня есть этот код ниже.Может ли кто-нибудь помочь?

<?php 
# form code
?>

<div>
  <form action="" method="post" autocomplete="off" id="theForm">
    <button type="submit" name="SeguA" />
      Seguir
    </button> 
  </form>
</div>

<script type="text/javascript">
  $(function() {
    $('#theForm').submit(function(event) {
      event.preventDefault();
      var form = $(this);
      $.ajax({
        type: form.attr('method'),
        url: form.attr('action'),
        data: form.serialize()
      });
    });
  });
</script>

1 Ответ

0 голосов
/ 06 декабря 2018

Это не означает «решение» в прямом смысле этого слова, но демонстрирует, что ваш код действительно работает в той версии, в которой вы его разместили.Я добавил только два элемента <input> и строку console.log().

Так, может быть, проблема где-то за пределами кода, который вы разместили здесь?

$('#theForm').submit(function(event) {
      event.preventDefault();
      var form = $(this);
      console.log(form.serialize());
      $.ajax({
        type: form.attr('method'),
        url: form.attr('action'),
        data: form.serialize()
      });
    });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<div>
  <form action="" method="post" autocomplete="off" id="theForm">
    <input type="text" name="a" value="some">
    <input type="text" name="b" value="thing">
    <button type="submit" name="SeguA" />
      Seguir
    </button> 
  </form>
</div>
...