Javascript 如何理解jQuery中返回的对象

Javascript 如何理解jQuery中返回的对象,javascript,jquery,ajax,Javascript,Jquery,Ajax,我有这个jQuery代码: $.ajax({ type: "POST", url: "/problems/vote.php", dataType: "json", data: dataString, success: function(data) {

我有这个jQuery代码:

        $.ajax({
                type: "POST",
                url: "/problems/vote.php",
                dataType: "json",
                data: dataString,
                success: function(data)
                {           
                    // ? :)
                    alert (dataString);


                },
                error : function(data) 
                {
                    alert("ajax error, json: " + data);

                    //for (var i = 0, l = json.length; i < l; ++i) 
                    //{
                    //  alert (json[i]);
                    //}
                }
            });
$.ajax({
类型:“POST”,
url:“/problems/vote.php”,
数据类型:“json”,
数据:dataString,
成功:功能(数据)
{           
// ? :)
警报(数据串);
},
错误:函数(数据)
{
警报(“ajax错误,json:+数据);
//for(var i=0,l=json.length;i
当我使用它时,我会在警报中看到类似这样的神秘信息:
objectxmlhttpreqest

我实际上如何获得从AJAX传入的值


谢谢

你试过使用Firefox插件FireBug吗?这是我首先开始的地方,因为它将向您显示返回的json对象的确切结构和数据


从这里开始,只需对对象名等进行编码。

您是否尝试过使用Firefox插件FireBug?这是我首先开始的地方,因为它将向您显示返回的json对象的确切结构和数据

从这里开始,只需通过以下几种方式对对象名称等进行编码:

console.log(data); // allows you to view your object in a tree in the console

或者在chrome/safari和firefox(firebug)中设置一个断点并检查它。

有几种方法:

console.log(data); // allows you to view your object in a tree in the console


或者在chrome/safari和firefox(firebug)中设置断点并查看。

firefox-下载firebug。任何web开发人员都必须这样做

Chome:不要发出警报,而是执行“console.log(data);”操作,这应该会弹出对象,您可以在控制台中查看其属性(点击F12)


或者,在警报之前写上“debugger;”,浏览器将暂停执行。您需要运行Firebug或打开Chrome开发工具。

Firefox-下载Firebug。任何web开发人员都必须这样做

Chome:不要发出警报,而是执行“console.log(data);”操作,这应该会弹出对象,您可以在控制台中查看其属性(点击F12)


或者,在警报之前写上“debugger;”,浏览器将暂停执行。您需要运行Firebug或打开Chrome开发工具。

首先,您正在警告
dataString
,至少在
success
回调中,没有从服务器返回任何内容
.ajax()
回调签名如下所示:
success(data,textStatus,jqXHR)
,因此,如果要返回真实数据,可以像任何JSON对象一样,通过
data
参数访问它。在
error
中,它是
error(jqXHR,textStatus,errorshown)
,所以如果这就是你所说的,它是有意义的


使用Firebug/Chrome/proxy/等确保从服务器返回的内容与预期相符,或者将其记录到控制台。

首先,您正在提醒
数据字符串,而不是从服务器返回任何内容,至少在
成功
回调中是这样
.ajax()
回调签名如下所示:
success(data,textStatus,jqXHR)
,因此,如果要返回真实数据,可以像任何JSON对象一样,通过
data
参数访问它。在
error
中,它是
error(jqXHR,textStatus,errorshown)
,所以如果这就是你所说的,它是有意义的


使用Firebug/Chrome/proxy/etc.确保从服务器返回的内容与预期相符,或者只需将其记录到控制台。

我假设您所说的是错误处理程序

jQueryAjax错误处理程序的签名是

错误(jqXHR、textStatus、errorshown)

请求失败时要调用的函数。该函数接收三个参数:jqXHR(在jQuery 1.4.x中,XMLHttpRequest)对象、描述发生的错误类型的字符串和可选的异常对象(如果发生)


您无法获取返回的“数据”,因为没有数据,只是一个错误。

我想您所说的是错误处理程序

jQueryAjax错误处理程序的签名是

错误(jqXHR、textStatus、errorshown)

请求失败时要调用的函数。该函数接收三个参数:jqXHR(在jQuery 1.4.x中,XMLHttpRequest)对象、描述发生的错误类型的字符串和可选的异常对象(如果发生)


您无法获取返回的“数据”,因为没有数据,只是一个错误。

是的,我在错误案例中得到了一些字符串。我就是不知怎么搞不懂那根绳子。它被包裹在对象中。是的,我在错误案例中得到了一些字符串。我就是不知怎么搞不懂那根绳子。它被包装在对象中。嗯,这不完全正确,服务器可以返回数据,不是吗?还有。@Dave是真的,但是我怀疑它会是OP想要的“数据”。我认为这取决于服务器端发生的事情。嗯,这不完全是真的,服务器可以返回数据,不是吗?这是真的,但我怀疑它是否会是OP想要的“数据”,我认为这取决于服务器端发生了什么。