Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
PHP_Барчук_довідник.doc
Скачиваний:
3
Добавлен:
31.08.2019
Размер:
1.14 Mб
Скачать

13.2 Приклад використання

Для того жоб працювати із об’єктом XMLHttpReques треба його створити але в кожному браузері ці об’єкти створюється по різному, тому створимо функцію яка буде автоматично створювати цей об’єкт для будь якого браузера.

function getXmlHttpRequest(){

if (window.XMLHttpRequest){

try{

return new XMLHttpRequest();

}catch (e){}

}else if (window.ActiveXObject){

try {

return new ActiveXObject('Msxml2.XMLHTTP');

} catch (e){}

try {

return new ActiveXObject('Microsoft.XMLHTTP');

}

catch (e){}

}

return null;

}

Основною можливістю цього об’єкту є можливість отримувати дані у вигляді XML документу.

Розглянемо простий приклад отримання даних із xml документу.

function showDemoSample(){

//Об'єкт XMLHttpRequest

var request = getXmlHttpRequest();

//Запит на сервер

request.open("GET", "data.xml", false);

request.send(null);

//Читання відповіді

var response = request.responseXML.documentElement;

var hello = response.getElementsByTagName('hello')[0].firstChild.data;

var name = response.getElementsByTagName("name")[0].firstChild.data;

document.getElementById("hello").innerHTML = hello;

document.getElementById("name").innerHTML = by;

}

Далі своримо xml документ data.xml:

<?xml version='1.0' ?>

<main>

<hello>Hello world</hello>

<name>My name is Alexander</name>

</main>

Тепер створимо HTML файл за допомогою якого ми і будемо отримувати дані із xml файлу

Index.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>

<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />

<script type="text/javascript">

function getXmlHttpRequest(){

if (window.XMLHttpRequest){

try{

return new XMLHttpRequest();

}catch (e){}

} else if (window.ActiveXObject){

try {

return new ActiveXObject('Msxml2.XMLHTTP');

} catch (e){}

try {

return new ActiveXObject('Microsoft.XMLHTTP');

}

catch (e){}

}

return null;

}

function showDemoSample(){

//Об'єкт XMLHttpRequest

var request = getXmlHttpRequest();

//Запит на сервер

request.open("GET", "data.xml", false);

request.send(null);

//Читання відповіді

var response = request.responseXML.documentElement;;

var hello = response.getElementsByTagName('hello')[0].firstChild.data;

var name = response.getElementsByTagName("name")[0].firstChild.data;

document.getElementById("hello").innerHTML = hello;

document.getElementById("name").innerHTML = by;

}

</script>

<title>Untitled 1</title>

</head>

<body>

<p><button onclick="showDemoSample()">Go</button></p>

<p id="hello"></p>

<p id="name"></p>

</body>

</html>

AutoShape 21 AutoShape 22

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]