Отправляет email-рассылки с помощью сервиса Sendsay
←  Предыдущая тема Все темы Следующая тема →
пишет:

Разбираем простую AJAX функцию

ajax

Давайте разберем простейшую функцию, которая работает просто вот так: ajax("?param=123");

Итак, первый и единственный обязательный параметр нашей AJAX функции "url" – адрес страницы, куда будет отправлен запрос.

Пожалуй, еще добавим в нашу функцию второй необязательный параметр "func". Он будет содержать название функции, которая будет обрабатывать результат.

function ajax(url, func) {
	var req; // Переменная с глобальной видимостью
	
	req = new XMLHttpRequest(); // Создаем объект
	
	req.open("GET", url, true); // Открываем
	
	req.onreadystatechange = function() { // Назначаем функцию для обработки ответа
		
		if(req.readyState!=4) return; // Далее только если операция завершена
		
		if(req.status!=200) { // Если статус не OK
			
			alert("ajax error: "+req.statusText); // Сообщаем об
ошибке
			
			return; // И выходим
			
		}
		
		if(typeof window[func]==="function") // Если функция существует
			
			еval(func+"(req.responseText);"); // То выполняем ее
передав в нее результат
		
		else alert(req.responseText); // Иначе выводим ответ
		
	}
	
	req.send(""); // Выполняем запрос
}

Подробные примеры, а также более универсальная функция здесь.

Оригинал статьи в удобном виде тут

Это интересно
+1

11.02.2018
Пожаловаться Просмотров: 424  
←  Предыдущая тема Все темы Следующая тема →


Комментарии временно отключены