0

所以我正在学习 Ajax,并按照本教程:https ://phpacademy.org/course/submitting-a-form-with-ajax创建一个适用于任何形式的函数。这是完整的功能:

$('form.ajax').on('submit', function() {
    var that = $(this),
        url = that.attr('action'),
        type = that.attr('method'),
        data = {};

    that.find('[name]').each(function(index, value) {
        var that = $(this),
            name = that.attr('name'),
            value = that.val();

        data[name] = value;
    });

    $.ajax({
        url: url,
        type: type,
        data: data,
        success: function(response) {
            alert(url + ' ' + response);
        }
    })
    return false;
});

如您所见,我所做的只是提醒响应,在本例中为 php echo。这就是我的问题开始的地方,我需要一种灵活且安全的方式来处理 javascript/php 通信。最好为所有表单提供一个函数,可能使用if ()语句而不是alert(url + ' ' + response);依赖于表单url

我需要的功能不是很复杂,根据我得到的响应,我只会用错误更新当前表单。

只要我知道在交流中使用什么我就可以了,echo '1';因为我现在感觉不是理想的解决方案,但这是我能处理的全部。

那么,我应该从 php 页面发送什么类型的响应,在哪里(在 javascript 中)以及如何处理它的最佳方式是什么?我听说过 json,但很难理解它。有人可以显示一个发送基本整数的 json 响应,这很容易让我的响应作为 int 接收吗?

4

1 回答 1

2

您可以通过 PHP 发回一个简单的 JSON 响应并在您的success回调中检查它。确保您在 AJAX 调用中设置了typeto和,并在 PHP 端使用:jsonjson_encode

$response = array('response' => 1);
echo json_encode($response);

输出应该是:

{ 'response' : 1 }
于 2013-09-23T15:53:40.113 回答