[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: отправка ответа сервером в AJAX
_SR_71_
Здравствуйте, я начинающий!
Вот занялся AJAX, написал элементарный скрипт.
Вот клиентский код:

<body>
<input type = "text" id = "tratata"></input>
<input type="button" id="send" value="Отправить"></input>
<script>

function process() {
xhr = new XMLHttpRequest();
xhr.open("GET", "test.php?x=" + document.getElementById("tratata").value, true);
xhr.onreadystatechange = handle;
xhr.send(null);

function handle() {
if(xhr.readyState == 4) {
if(xhr.status ==200) {
document.getElementById("tratata").innerHTML = xhr.responseText;
}
}
}
}

document.getElementById("send").onclick = process;
</script>
</body>

А вот серверная часть:

<?php
header('Content-Type: text/xml');
$value = $_GET['x'];
echo "lol".$value;
?>

Писал более сложный скрипт для отправки и возврата сообщений с текущим временем, на сервер запрос приходит, сообщение записывается в файл, но ответ клиенту не приходит.
Читал в книгах, везде по типу считывается запрос из $_GET а затем ответ echo.
xlebosol
Зачем дескриптору INPUT закрывающий тег. Одна функция вложена в другую.
xlebosol


<?php
$value = $_GET['x'];
if (isset($value)) {
echo "lol_".$value;
exit();
}
?>

<html>
<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</
head>

<
body>
<
input type="text" id="tratata">
<
button onclick="process(); return false;">Отправить</button>
<
div id="test"></div>
<
script>

function process() {
xhr = new XMLHttpRequest();
xhr.onreadystatechange = handle;
xhr.open("GET", "test.php?x=" + encodeURIComponent(document.getElementById("tratata").value), true);

xhr.send(null);
}

function handle() {
if(xhr.readyState == 4) {
if(xhr.status ==200) {
document.getElementById("test").innerHTML = xhr.responseText;
}
}
}


</script>
</
body>
</
html>


Можно воспользоваться таким вариантом.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.