JavaScript. Подробное руководство, 6-е издание, стр. 320
В версии jQuery 1.5, которая вышла, когда эта книга готовилась к печати, модуль поддержки архитектуры Ajax был полностью переписан, и в нем появилось несколько новых удобных особенностей. Самое важное, что функция
<b>jQuery.ajax()</b><b>jqXHR</b><b>XMLHttpRequest</b><b>$.getScript()</b><b>XMLHttpRequest</b><b>jqXHR</b><b>success()</b><b>error(),</b><b>jQuery.get(),</b><b>success()</b><b>jqXHR</b><b>jQuery.get("data.txt")</b><b> .success(function(data) { console.log("Получено ", data): })</b><b> .success(function(data) { process(data): });</b>19.6.3.1. Часто используемые параметры
Ниже перечислены параметры, которые наиболее часто передаются функции
<b>jQuery.ajax():</b><b>type</b>Определяет метод HTTP-запроса. По умолчанию имеет значение «GET». Другим наиболее часто используемым значением является «POST». Допускается указывать также другие методы HTTP-запросов, такие как «DELETE» и «PUT», но они поддерживаются не всеми броузерами. Обратите внимание, что имя этого параметра может вводить в заблуждение: он не имеет никакого отношения к типу данных в запросе или ответе, и для него лучше подошло бы имя «method».
<b>url</b>URL-адрес загружаемых данных. При выполнении GET-запросов параметр data добавляется в конец этого URL-адреса. Библиотека jQuery может автоматически добавлять параметры в строку URL при выполнении JSONP-запросов и когда параметр cache имеет значение false.
<b>data</b>Данные, добавляемые в конец URL-адреса (для GET-запросов) или отправляемые в теле запроса (для POST-запросов). Может быть строкой или объектом. Объекты обычно преобразуются в строки, как описывалось во врезке в разделе 19.6.2.2, однако имеются некоторые исключения, которые приводятся в описании параметра
<b>processData</b><b>dataType</b>Определяет тип ожидаемых данных в ответе и способ их обработки библиотекой jQuery. Допустимыми значениями являются «text», «html», «script», «json», «jsonp» и «xml». Суть этих значений описана во врезке в разделе 19.6.2.3. Этот параметр не имеет значения по умолчанию. Если он не указан, библиотека jQuery проверит заголовок «Content-Type» ответа, чтобы определить, что делать с полученными данными.
<b>contentType</b>Определяет HTTP-заголовок «Content-Type» запроса. По умолчанию имеет значение «application/x-www-form-urlencoded», которое обычно используется HTML-формами и большинством серверных сценариев. Если вы установили параметр
<b>type</b><b>timeout</b>Предельное время ожидания в миллисекундах. Если этот параметр установлен и запрос не завершится в течение указанного времени, выполнение запроса прервется и будет вызвана функция обратного вызова
<b>error</b><b>timeout</b><b>cache</b>При выполнении GET-запросов, если этот параметр будет установлен в значение false, библиотека jQuery добавит параметр _= в строку URL или заменит существующий параметр с этим именем. В качестве значения этого параметра будет установлено текущее время (в виде количества миллисекунд). Это предотвратит использование кэша броузера, поскольку каждый раз, когда запрос будет выполняться, строка URL будет иной,
<b>ifModified</b>Когда этот параметр имеет значение true, библиотека jQuery будет сохранять значения заголовков «Last-Modified» и «If-None-Match» ответов для каждого запрошенного URL-адреса и затем будет устанавливать эти заголовки во всех последующих запросах к тем же самым URL-адресам. Это предписывает серверу отправлять НТТР-ответ 304 «Not Modified», если содержимое по указанному URL-адресу не изменилось с момента последнего обращения. По умолчанию данный параметр не установлен и библиотека jQuery не сохраняет эти заголовки.
Библиотека jQuery преобразует НТТР-ответ 304 в код состояния «notmodified». Код «notmodified» не считается ошибкой и передается функции обратного вызова success вместо обычного кода состояния «success». То есть если вы устанавливаете параметр
<b>ifModified</b><b>global</b>Этот параметр определяет, должна ли библиотека jQuery возбуждать события в ходе выполнения Ajax-запроса. По умолчанию имеет значение true. Присвойте этому параметру значение false, чтобы запретить все события, связанные с поддержкой архитектуры Ajax. (Полное описание событий приводится в разделе 19.6.4.) Имя этого параметра несколько обескураживает: он имеет имя «global», потому что обычно библиотека jQuery возбуждает события глобально, а не в конкретном объекте.
19.6.3.2. Функции обратного вызова
Следующие параметры определяют функции, вызываемые на разных стадиях в ходе выполнения Ajax-запроса. С параметром success вы уже знакомы: это функция обратного вызова, которая передается методам, таким как
<b>jQuery.getJS0N().</b>