使用Ajax时的POST变量

时间:2018-11-05 21:29:37

标签: php ajax

我正在使用ajax的POST表单,但是我只是不能使用POST变量,而且我不知道为什么。 我确实尝试过Ajax类型/方法 我还应该尝试什么?

index.html

<script>
$(document).ready(function () {
  $('form').on('submit', function (e) {
          e.preventDefault();
    $.ajax({
        type:'post',
        url: 'update-user.php',
        data: $('form').serialize(),
        dataType: "text",
          success: function (str) {
              $('#message').text(str)
            }
        })
    });
});
</script>
<p id="message"> </p>
    <form action="/" id="useredit">
<input type="hidden" id="id" value="1">
  <input type="text" id="firstname" value="test">
  <input type="submit" name="update" value="updateuser">
</form>

update-user.php

<?php 
     if (isset($_POST['update'])) {
          echo "sucsses"; 
     }
     else
     {
          echo "faild";
     }

    ?>

2 个答案:

答案 0 :(得分:0)

尝试一下 您需要在此处添加数据类型

$(document).ready(function () {
  $('form').on('submit', function (e) {
          e.preventDefault();
    $.ajax({
        type:'post',
        url: 'update-user.php',
        data: $('form#useredit').serialize(),
          success: function (str) {
              $('#message').text(str)
            }
        })
    });
});

答案 1 :(得分:0)

这是解决方案:

<script>
$(document).ready(function () {
  $('#submit').click(function (e) {
          e.preventDefault();
    $.ajax({
        type : "POST",
        url: 'update-user.php',
        data : $("#form").serialize(),
        dataType: "text",
          success: function (str) {
              $('#message').text(str)
            }
        })
    });
});