Ajax (програмиране): Разлика между версии

Изтрито е съдържание Добавено е съдържание
м форматиране
м без пример, +{{софтуер-мъниче}}
Ред 1:
'''AJAX''' (съкращение на Аasynchronous [[JavaScript]] and [[XML]]) е похват в уеб разработките за създаване на интерактивни [[уеб приложение|уеб приложения]]. Идеята е [[уеб страница|уеб страниците]] да станат по-впечатляващи чрез асинхронен обмен на малки порции данни „зад кадър“, така че да не бъде необходимо да се презарежда цялата страница отново. По този начин се повишава [[интерактивност]]та, скоростта и функционалността на страниците.
 
Сам по себе си AJAX не е [[технология]], а [[термин]] за употребата на група технологии. За първи път се споменава през февруари 2005 г. от Джеси Джеймс Гарет в статията му „Ajax: A New Approach to Web Applications“.
 
AJAX техниката се използва като комбинация от:
Line 5 ⟶ 7:
* [[XHTML]] (или [[HTML]]) и [[CSS]] за форматиране и [[шрифт|ошрифтяване]] на [[текст]]а.
* [[DOM]] (Document Object Model) реализиран чрез програмиране от страна на клиента с помощта на езици като JavaScript и JScript за динамична визуализация и интерактивност на предоставената информация.
* [[XMLHttpRequest]] (XHR) обекта за обмяна на данни асинхронно с [[сървър|уеб сървър]]. В някои случаи се използва IFrame обекта вместо XMLHttpRequest.
* [[XML]] в някои случаи е използвания формат за трансфер на данни между сървър и клиент. Все пак всеки формат е удачен, включително преформатиран HTML, чист текст, JavaScript Object Notation (JSON) и др.
 
Сам по себе си AJAX не е [[технология]], а [[термин]] за употребата на група технологии. За първи път се споменава февруари 2005 г. от Джеси Джеймс Гарет в статията му „Ajax: A New Approach to Web Applications“.
 
== Пример за използването на AJAX ==
<pre>
[[Javascript]]
 
function makeRequest()
{
var http_request = false;
if (window.XMLHttpRequest) { // Mozilla, Safari, ...
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {
http_request.overrideMimeType('text/xml'); // Фиксиране на някои проблеми
}
} else if (window.ActiveXObject) { // IE
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!http_request) {
alert('Възникна проблем при създаването на XMLHTTP връзка');
return false;
}
return http_request;
}
function testAJAX()
{
var http_request = makeRequest();
var info = "Някаква информация";
var url = 'link/to/server/file/ajax.php?test=' + info;
http_request.open('GET', url, true);
http_request.onreadystatechange = function() { testResponse(http_request); };
http_request.send(null);
}
function testResponse(http_request)
{
if (http_request.readyState == 4 || http_request.readyState == 'complete') { // Проверка...
if (http_request.status == 200) { // Втора проверка...
alert(http_request.responseText); // Действие с получената информация
} else {
alert('Има проблем с получаването на информация');
}
}
}
 
[[PHP]]
 
<?php
if (isset($_GET['test'])) {
echo "Връщане на информация";
}
?>
</pre>
 
== Външни препратки ==
Line 70 ⟶ 14:
* [http://www.technologybulgaria.com/asynchronous-javascript-and-xml-ajax.html Asynchronous JavaScript And XML AJAX]
 
 
{{софтуер-мъниче}}