0

AJAX 呼び出しから返されるデータ形式は次のとおりです。

{
  "items" : {
    "Phones" : "PhoneSelect",
    "NoteBooks" : "notebookSelect",
    "Tablets" : ""
  },
  "title" : "What would you like to purchase?",
  "defaultText" : "Choose a product category"
}

AJAX 呼び出し

function fetchSelect (val) {
  $.getJSON('ajax.php', {key:val}, function(r) {
  $.each(r.items, function (k, v) {

のjQuery仕様によると.getJSON

$.ajax({
  url: url,
  dataType: 'json',
  data: data,
  success: callback
});
  1. 私の質問は、呼び出し{key:val}から返されたデータです。rfunction(r)

  2. 関数が に渡されてvalいるのがわかりますが、のキー値は何ですか{key:val}

4

3 に答える 3

2

{key:val}実際には、AJAX 呼び出しでサーバーに送信されているものです。

rパラメータは、AJAX 呼び出しから返されるデータです。データは、パラメーターとしてコールバック関数に返されます。

ドキュメントの関数シグネチャを見ると、各パラメータがどうあるべきかがわかります -

jQuery.getJSON( url [, data] [, success(data, textStatus, jqXHR)] )

  • url - リクエストの送信先 URL を含む文字列。
  • data -リクエストとともにサーバーに送信されるマップまたは文字列。
  • success(data,textStatus, jqXHR) - リクエストが成功した場合に実行されるコールバック関数。

パラメータrはコールバックdataに返されsuccessます。あなたの場合、それは JSON オブジェクトです。

于 2012-10-08T23:59:37.710 に答える
1
{key:val} // The data sent to the server

rにはコールバックの結果が含まれます

r.items.Phones  // PhoneSelect
r.items.NoteBooks // notebookSelect
于 2012-10-09T00:00:59.113 に答える
0

$ .getJSONを呼び出すときは、3つのパラメーターを取ります。1。Url 2. INutData3.コールバック関数。つまり、あなたの質問に対する答えは、ajax呼び出しが完了すると、jQueryはfunction(R)の代わりに渡された関数を呼び出すということです。ここで、Rはajax呼び出しに対するサーバーからの応答です。

于 2012-10-09T00:01:47.303 に答える