freeCodeCamp/guide/russian/jquery/jquery-ajax-post-method/index.md

67 lines
4.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

---
title: jQuery Ajax Post Method
localeTitle: Метод jQuery Ajax Post
---
## Метод jQuery Ajax Post
Отправляет асинхронный запрос HTTP POST для загрузки данных с сервера. Его общая форма:
```javascript
jQuery.post( url [, data ] [, success ] [, dataType ] )
```
* url: единственный обязательный параметр. Эта строка содержит адрес для отправки запроса. Возвращенные данные будут проигнорированы, если не указан другой параметр
* data: простой объект или строка, которая отправляется на сервер с запросом.
* success: функция обратного вызова, которая выполняется, если запрос successs.it принимает в качестве аргумента возвращаемые данные. Он также передает текстовый статус ответа.
* dataType: тип данных, ожидаемых от сервера. По умолчанию используется Intelligent Guess (xml, json, script, text, html). если этот параметр предоставлен, то также должен быть предоставлен обратный вызов успеха.
#### Примеры
```javascript
$.post('http://example.com/form.php', {category:'client', type:'premium'});
```
запрашивает `form.php` с сервера, отправляет дополнительные данные и игнорирует возвращенный результат
```javascript
$.post('http://example.com/form.php', {category:'client', type:'premium'}, function(response){
alert("success");
$("#mypar").html(response.amount);
});
```
запрашивает `form.php` с сервера, отправляет дополнительные данные и обрабатывает возвращенный ответ (формат json). Этот пример можно записать в таком формате:
```javascript
$.post('http://example.com/form.php', {category:'client', type:'premium'}).done(function(response){
alert("success");
$("#mypar").html(response.amount);
});
```
Следующий пример отправляет форму с использованием Ajax и помещает результаты в div \`\` \`html jQuery.post demo
// Attach a submit handler to the form $( "#searchForm" ).submit(function( event ) { // Stop form from submitting normally event.preventDefault(); // Get some values from elements on the page: var $form = $( this ), term = $form.find( "input\[name='s'\]" ).val(), url = $form.attr( "action" ); // Send the data using post var posting = $.post( url, { s: term } ); // Put the results in a div posting.done(function( data ) { var content = $( data ).find( "#content" ); $( "#result" ).empty().append( content ); }); });
```
The following example use the github api to fetch the list of repositories of a user using jQuery.ajax() and put results in a div
```
HTML
// Attach a submit handler to the form $( "#userForm" ).submit(function( event ) { // Stop form from submitting normally event.preventDefault(); // Get some values from elements on the page: var $form = $( this ), username = $form.find( "input\[name='username'\]" ).val(), url = "https://api.github.com/users/"+username+"/repos"; // Send the data using post var posting = $.post( url, { s: term } ); //Ajax Function to send a get request $.ajax({ type: "GET", url: url, dataType:"jsonp" success: function(response){ //if request if made successfully then the response represent the data $( "#result" ).empty().append( response ); } }); });
```
### jQuery.ajax()
`$.post( url [, data ] [, success ] [, dataType ] )` is a shorthand Ajax function, equivalent to:
```
Javascript $ .ajax ({ тип: «POST», url: url, данные: данные, успех: успех, dataType: dataType }); \`\` \`
`$.ajax()` предоставляет дополнительные опции, которые можно найти [здесь.](http://api.jquery.com/jquery.ajax/)
#### Дополнительная информация:
Для получения дополнительной информации посетите [официальный сайт](https://api.jquery.com/jquery.post/)