AJAX $ _POST不起作用

时间:2016-04-02 16:11:09

标签: javascript php jquery

所以我想在单击按钮时在javascript文件和php文件之间传递一个值。但是当我点击按钮时,我看不到回声,是否有人看到问题?以下是我的代码的两个片段:

test.php的:

<script type="text/javascript" src="/functions/js/test.js"></script>

<button type="button" class="btn btn-success" onclick=" myAjax();">Test</button>

<?php


if($_POST['action'] == 'go') 
    {
    echo "worked";
    }
?>

和test.js

function myAjax() {


  $.ajax({
       type: "POST",
       url: 'test.php',
       data:{action:'go'},
       success:function() {

       }

  });
}

3 个答案:

答案 0 :(得分:0)

您的问题是您收到了回复,但没有输出回复。

使用console.log输出到控制台:

$.ajax({
       type: "POST",
       url: 'test.php',
       data:{action:'go'},
       success: function(data) {
         console.log(data);
       }

  });

答案 1 :(得分:0)

你将在成功函数内部工作

function myAjax() {
  $.ajax({
       type: "POST",
       url: 'test.php',
       data:{action:'go'},
       success:function(data) {
           alert(data);//or console.log(data);
       }
  });
}

答案 2 :(得分:0)

首先,您需要包含jQuery库

其次,将您的路径加载到文件test.js

你应该使用一个类,不要调用函数myAjax()。

在按钮中使用类,例如: 测试

好吧,在你的test.js文件中使用:

$(document).on('click', '.Test', function(e) {
  $.ajax({
    type: "POST",
    url: 'test.php',
    data:{action:'go'},
    success:function(data) {
     console.log('worked');
    }
  });
});

如果只需要发送一个参数,请使用此代码,这样更容易:

$(document).on('click', '.Test', function(e){
  var vars = 'go';
  var params='go='+vars;

  location.href = 'test.php'+params;
});

然后在你的php文件中你可以使用$ _POSt或$ _REQUEST来获取变量

<?php
  if($_POST['action'] == 'go') 
  {
   echo "worked";
  }
?>

度过愉快的一天