javascript - Jquery 从 POST 函数返回 [Object object]

标签 javascript jquery ajax

我想使用 jquery post 从 php 文件获取字符串。

function getString(string) {
    return $.ajax({
        type : 'POST',
        url : 'scripts/getstring.php',
        data : { 'string': string }
    });
};

在 Firebug 控制台中,我可以看到找到了所需的字符串,但如果我想使用它来获取它

var blub = getString("test");
    alert(blub);

仅显示“对象对象”。 只是不知道我的错误在哪里..

最佳答案

向服务器发出的 Ajax 请求是异步执行的,因此 ajax方法实际上返回一个代表请求本身的对象,而不是来自服务器的实际响应。

The jQuery XMLHttpRequest (jqXHR) object returned by $.ajax() as of jQuery 1.5 is a superset of the browser's native XMLHttpRequest object.

您可以使用 success 回调来代替:

function getString(string) {
    return $.ajax({
        type : 'POST',
        url : 'scripts/getstring.php',
        data : { 'string': string }
        success: function(result) {
            alert(result);
        },
    });
};

或者如果你想更灵活一点,你可以将回调函数作为参数:

function getString(string, callback) {
    return $.ajax({
        type : 'POST',
        url : 'scripts/getstring.php',
        data : { 'string': string }
        success: callback,
    });
};

getString('test', function(result) {
    alert(result);
})

关于javascript - Jquery 从 POST 函数返回 [Object object],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20459225/

相关文章:

javascript - 根据数组值设置状态值 React + ES6

javascript - 在 IE6 中输入键不会提交表单

javascript - 在 ajax 加载的内容上重新运行应用程序 Javascript

javascript - 如何使用 JSON.parse() 显示正确的值?

php - 如何在div中运行php函数而无需每次刷新

javascript - Grails 资源、302、SSL 和 Chrome

Javascript MySQL查询在Discord聊天中返回[object Object],但在控制台中返回正确的结果

jquery - 在 jquery 中使用隐藏和显示时不需要的 "flickering"效果

javascript - 如何在关闭 Accordion 时自动关闭 Accordion 内部的所有可折叠元素?

javascript - 使用ajax填充谷歌地图标记