|
|
|
| Здравствуйте.Хочу сделать динамический поиск на AJAX, но почему-то не получается вывести данные запроса.Вот код страницы:
<!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"><head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Untitled Document</title>
<style>
#site
{
vertical-align: top;
}
#site input,#site label,#site textarea,#site p
{
display: list-item;
list-style-type: none;
margin: 10px 0 0 10px;
padding:0;
}
#site input,#site textarea
{
border: 1px solid #000;
}
.menu
{
vertical-align: top;
margin:0;
padding: 0;
}
.longtext
{
width: 500px;
}
.shorttext
{
width:24px;
}
</style>
<script type="text/javascript">
function createHttpRequest()
{
var Request = false;
if (window.XMLHttpRequest)
{
//Gecko-совместимые браузеры, Safari, Konqueror
Request = new XMLHttpRequest();
}
else if (window.ActiveXObject)
{
//Internet explorer
try
{
Request = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (CatchException)
{
Request = new ActiveXObject("Msxml2.XMLHTTP");
}
}
if (!Request)
{
alert("Невозможно создать XMLHttpRequest");
}
return Request;
}
var httpRequest = createHttpRequest();
var resultId = '';
function getRequest() {
if (httpRequest.readyState == 4)
{
if (httpRequest.status == 200)
{
//Передаем управление обработчику пользователя
document.getElementById(resultId).innerHTML = httpRequest.responseText;
}
else
{
//Оповещаем пользователя о произошедшей ошибке
alert ("Ошибка сервера "+httpRequest.status);
}
}
else
{
//Оповещаем пользователя о загрузке
document.getElementById(resultId).innerHTML = 'Подождите, идет обработка...';
}
}
function sendRequest(file, resultId) {
httpRequest.open('GET', file, true);
httpRequest.onReadyStateChange = getRequest;
httpRequest.send(null);
}
</script>
</head><body>
<br><strong>Поиск по названию</strong>
<form action="#">
<input id="searchQuery" size="30" maxlength="30" onkeyup="javascript:sendRequest('i.php?q='+document.getElementById('searchQuery').value,'result');" type="text">
<p id="result" /></p>
</form>
</body></html>
|
Файл обработки и вывода i.php:
<?php
if(isset($_GET['q']))
{
header('Content-type: text/html; charset=windows-1251 ');
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
echo "Работает!";
}
?>
|
| |
|
|