русский  עברית
tadam logo
Нашли ошибку в тексте?
Отметьте её курсором и нажмите
Ctrl + Enter
Проверка орфографии Xhtml.co.il
Orphus system
Рассылка
Присоединитесь к списку рассылки для получения последних новостей
Имейл
Имя и фамилия

jQuery.get( url, [ данные ], [ success(данные, текстСтатус, jqXHR) ], [ типДанных ] )

Возвращает: jqXHR
Описание: Загружает страницу используя метод GET.

Аргументы

jQuery.get( url, [ данные ], [ success(данные, текстСтатус, jqXHR) ], [ типДанных ] )

Добавлена в версию: 1.0
Изменена в версии: 1.5
Строка, содержащая URL, к которому направлен запрос.
Карта (ключ/значение) или строка, которые отправляется на сервер с запросом.
success(данные, текстСтатус, jqXHR)
Функция, которая исполняется всякий раз после удачного завершения загрузки данных.
типДанных
тип данных
Тип данных, который ожидается с сервера. По умолчанию: интеллектуальные (xml, json, script, или html).
Это сокращенная функция Ajax, которая эквивалентна:
$.ajax({
  url: url,
  data: data,
  success: success,
  dataType: dataType
});

Функция обратного вызова success передает возвращаемые данные, которые будут корневым элементом XML, строкой текста, файлом JavaScript, или объектом JSON, в зависимости от типа ответа MIME.Она также посылает статус ответа.

Начиная с jQuery 1.5, функция обратного вызова success также передает объект "jqXHR"jQuery 1.4, она передавала объект XMLHttpRequest). Однако, поскольку JSONP и кросс-доменные запросы GET не используют XHR, в этих случаях параметры (j)XHR и textStatus передаваемые в функцию обратного вызова не будут определены.

Большинство реализаций определит обработчик успешного выполнения:
$.get('ajax/test.html', function(data) {
  $('.result').html(data);
  alert('Load was performed.');
});
Этот пример получает запрошенный фрагмент HTML и вставляет его на страницу.

Объект jqXHR

Начиная с jQuery 1.5, все методы jQuery Ajax возвращают расширенный объект XMLHTTPRequest. Это объект jQuery XHR, или "jqXHR", возвращаемый с помощью $.get() реализует интерфейс Promise, придав ему все свойства, методы и поведение Promise (смотрите Отсроченный объект для полной информации). Для удобства и совместимости с функцией обратного вызова имен, используемых в $.ajax(), он обеспечивает методы .error(), .success() и .complete(). Эти методы принимают аргумент функции, которая вызывается когда запрос завершается, и функция получает те же аргументы, соответственно названиям функции обратного вызова $.ajax().

Интерфейс Promise в jQuery 1.5 также позволяет методам jQuery Ajax, включая $.get(), соединять многочисленные функции обратного вызова .success(), .complete() и .error() на единичный запрос, и даже назначает эти функции обратного вызова после того как запрос может быть завершен. Если запрос уже завершен, функция обратного вызова немедлено вызывается.

// Assign handlers immediately after making the request,
  // and remember the jqxhr object for this request
  var jqxhr = $.get("example.php", function() {
    alert("success");
  })
  .success(function() { alert("second success"); })
  .error(function() { alert("error"); })
  .complete(function() { alert("complete"); });

  // perform other work here ...

  // Set another completion function for the request above
  jqxhr.complete(function(){ alert("second complete"); });

Дополнительные примечания:

  • Из-за ограничений безопасности браузера, большинство запросов "Ajax" зависит от Правил ограничения домена; запрос не может успешно извлекать данные из другого домена, поддомена или протокола.
  • Если запрос с jQuery.get() возвращает код ошибки, он молча падает, кроме случая, когда сценарий также вызывает глобальный метод .ajaxError(). Начиная с jQuery 1.5, метод .error() объекта jqXHR, возвращаемого с помощью jQuery.get() также доступен для обработки ошибок.
  • Скрипт и запросы JSONP не распространяются на Правила ограничения домена.

Примеры

Пример 1

Запрашивает страницу test.php не обращая внимания на результат.
$.get("test.php");

Пример 2

Запрашивает страницу test.php отсылая при этом некоторые дополнительные данные (результат операции все еще игнорируется).
$.get("test.php", { name: "John", time: "2pm" } );

Пример 3

Отсылает массивы данных на сервер (результат операции все еще игнорируется).
$.get("test.php", { 'choices[]': ["Jon", "Susan"]} );

Пример 4

Показывает в сообщении результат запроса страницы test.php (HTML или XML, в зависимости от того, что возвратилось).
$.get("test.php", function(data){
   alert("Data Loaded: " + data);
 });

Пример 5

Показывает в сообщении результат запроса страницы test.cgi с загрузкой дополнительных данных (HTML или XML, в зависимости от того, что возвратилось).
$.get("test.cgi", { name: "John", time: "2pm" },
   function(data){
     alert("Data Loaded: " + data);
   });

Пример 6

Получает содержимое страницы test.php, которое возвращается в формате json (<?php echo json_encode(array("name"=>"John","time"=>"2pm")); ?>).
$.get("test.php", { "func": "getNameAndTime" },
   function(data){
     alert(data.name); // John
     console.log(data.time); //  2pm
   }, "json");
Была ли эта информация полезной?
   

Комментарии