Php Ajax提交不起作用

Php Ajax提交不起作用,php,jquery,ajax,Php,Jquery,Ajax,我会让它变得简单,我想提交数据,而不使用表格等。。。 我有以下代码: HTML 在categoryactions.php中,我有以下内容: PHP 但当它将我重定向到categoryactions.php时,我什么也得不到。我不确定这是否是使用AJAX提交数据的方式,但至少我尝试过。如果有人知道如何解决这个问题,我将不胜感激 您单击的处理程序正在发出两个单独的请求。首先,使用AJAX发送请求,然后进入页面。当您查看页面时,您将看不到结果,因为结果是提供给AJAX请求的 AJAX的要点是避免更

我会让它变得简单,我想提交数据,而不使用表格等。。。 我有以下代码:

HTML

在categoryactions.php中,我有以下内容:

PHP



但当它将我重定向到categoryactions.php时,我什么也得不到。我不确定这是否是使用AJAX提交数据的方式,但至少我尝试过。如果有人知道如何解决这个问题,我将不胜感激

您单击的处理程序正在发出两个单独的请求。首先,使用AJAX发送请求,然后进入页面。当您查看页面时,您将看不到结果,因为结果是提供给AJAX请求的

AJAX的要点是避免更改页面

试试这个:

$('.categ-edit').click(function() {
    $.ajax({
        url: 'categoryactions.php',
        type: 'POST',
        data: {action: 'edit'},
        success: function(data) {
            alert(data);
        }
    });
});

在Ajax中使用重定向没有意义。您需要使用
success
方法

$('.categ-delete').click(function() {
    $.ajax({
    url: 'categoryactions.php',
    type: 'POST',
    data: {action: 'delete'},
    success: function(data){
            alert(data);
            //or, put response in a div
            $('#someDivId').html(data);
       }
    });
});
Ajax的要点是在不更改地址栏中的URL的情况下检索对另一个页面的请求的响应。它在变量中为您检索响应,该变量是
success
方法的输入,然后您可以使用它来做一些事情。

使用PHP的AJAX示例 我无法准确回答您的问题,但我将帮助您理解对http服务器的ajax请求以及如何相应地处理响应

示例jQuery 示例file.php
您实际上调用了“categoryactions.php”两次。第一次作为异步调用(ajax),第二次作为重定向:window.location.href=“categoryactions.php”

在第二次调用中,没有发布任何内容,因此您的输出为空。这条线没有任何作用,你应该把它移走


ajax调用发生在后台,因此您不会在浏览器中看到echo的输出。如果确实要验证它是否正常工作,请使用文件调用替换echo以将其写入文件。然后检查文件内容。

在Ajax中不使用
window.location.href=
。这将使它无法工作。所以我只编写代码,就这样?不,您需要
成功
方法。看我的例子。我认为写入文件会使事情复杂化。我想他是想让AJAX工作起来。这就是echo的作用。@acbabis-但这是一个异步调用,他永远看不到echo。echo将把文本打印到响应体,响应体将作为AJAX的结果。如果他做了必要的更改以查看响应(1.不重定向,2.异步显示响应),那么他将演示如何使用AJAX。
<?php

    $action = $_POST['action'];
    echo $action;

?>
$('.categ-edit').click(function() {
    $.ajax({
        url: 'categoryactions.php',
        type: 'POST',
        data: {action: 'edit'},
        success: function(data) {
            alert(data);
        }
    });
});
$('.categ-delete').click(function() {
    $.ajax({
    url: 'categoryactions.php',
    type: 'POST',
    data: {action: 'delete'},
    success: function(data){
            alert(data);
            //or, put response in a div
            $('#someDivId').html(data);
       }
    });
});
$('.categ-edit').click(function() {
    $.get('/path/to/file.php', function(data) {
        console.log(data);
    });
});
<?php
echo json_encode('HELLO');