2010-08-09 66 views
3

我有一个关于$ .post()在jQuery中的问题。一般的语法是:

jQuery.post(url, [ data ], [ success(data, textStatus, XMLHttpRequest) ], [ dataType ]); 

我会很感激,如果有人能在什么样的数据,textStatus与可能的话

感谢一个例子沿棚光!

+0

好问题......我知道'数据'是什么(从字面上看,AJAX的页面传回的数据),但对textStatus没有任何想法。 – Tarka 2010-08-09 16:52:09

+0

textStatus是从服务器返回的状态。 – 2010-08-09 16:53:48

+0

如果我不得不猜测'textStatus',我会说它是HTTP响应中返回的文本状态(“OK”或“Bad Request”) – KLee1 2010-08-09 16:54:10

回答

2

data是你从服务器返回的响应。这取决于您指定的dataType。如果您指定json作为dataType参数的参数,则jQuery将将从服务器接收的数据解释为json

textStatus为您提供有关响应的信息,例如它是否成功,或者发生了什么事情。 Possible values是:

  • success
  • error
  • notmodified
  • timeout
  • parsererror

如果您success处理程序被调用,那么textStatus值是最有可能success

如果数据属于意外类型,您将收到parsererror。例如,如果您指定dataTypejson,但服务器返回了XML,则将获得parsererror,并且将调用您的error处理程序。

+0

有没有描述这个的链接?我自己找不到JQuery文档中的任何内容。 – KLee1 2010-08-09 17:02:39

+0

@ KLee1 oops - 忘记链接到源代码。我编辑了我的答案。我假设你在谈论'textStatus'? – 2010-08-09 17:10:54

+0

是的。这就是我一直在寻找的。 +1 – KLee1 2010-08-09 17:32:46

1

根据http://api.jquery.com/jQuery.post/,所述评论是正确

成功回调函数传递返回的数据,这将是一个XML根元素或根据MIME类型的响应的一个文本串。它也传递了响应的文本状态。