jQuery.getJSON

« Обратно к странице функций Ajax

jQuery.getJSON( url, [данные][вызов] )

Загружает данные JSON используя метод GET.
Начиная с jQuery версии 1.2 у Вас есть возможность загружать данные JSON расположенные на другом домене. Для этого нужно использовать функцию JSONP в качестве функции callback (обратного вызова), например, “myurl?callback=?”. jQuery автоматически заменяет знаки “?”  на соответствующее имя метода, который необходимо использовать, вызывая функцию, которую вы указали в callback. Параметр callback может отличаться в разных API, например, Yahoo Pipes требует указания «_callback=?».

Примечание: помните, что строки после этой функции будут выполнены перед функцией в callback.

Аргументы:

url Строка
Ссылка на документ.
данные (необязательно) Map
Пары ключ/значение, которые будут отосланы на сервер.
вызов (необязательно) Функция
Функция, которая исполняется всякий раз после удачного завершения загрузки данных.

function (data, textStatus) {
  // data will be a jsonObj
  // textStatus will be one of the following values:
  //   "timeout","error","notmodified","success","parsererror"
  this; // the options for this ajax request
}
Примеры:

Загружает 4 последние изображения из Flickr JSONP API.

$.getJSON("http://api.flickr.com/services/feeds/photos_public.gne?tags=cat&tagmode=any&format=json&jsoncallback=?",
        function(data){
          $.each(data.items, function(i,item){
            $("<img/>").attr("src", item.media.m).appendTo("#images");
            if ( i == 3 ) return false;
          });
        });
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
                    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
  <script src="http://code.jquery.com/jquery-latest.js"></script>

  <script>
  $(document).ready(function(){
    $.getJSON("http://api.flickr.com/services/feeds/photos_public.gne?tags=cat&tagmode=any&format=json&jsoncallback=?",
        function(data){
          $.each(data.items, function(i,item){
            $("<img/>").attr("src", item.media.m).appendTo("#images");
            if ( i == 3 ) return false;
          });
        });
  });
  </script>

  <style>img{ height: 100px; float: left; }</style>
</head>
<body>
  <div id="images">
  </div>
</body>

</html>
Загружает данные JSON из test.js и выводит в сообщении некоторые из них.
$.getJSON("test.js", function(json){
  alert("JSON Data: " + json.users[3].name);
});
Загружает данные JSON из test.js и выводит в сообщении некоторые из них.
$.getJSON("test.js", { name: "John", time: "2pm" }, function(json){
  alert("JSON Data: " + json.users[3].name);
});
Выводит результаты обработки страницы pages.php в виде массива.

Автор Manuel Gonzalez.
var id=$("#id").attr("value");
  $.getJSON("pages.php",{id:id},dates);
function dates(datos)
{

 $("#list").html("Name:"+datos[1].name+"<br>"+"Last Name:"+datos[1].lastname+"<br>"+"Address:"+datos[1].address);
}
Name Type