Тема: ajax javascript
Показать сообщение отдельно
  #1 (permalink)  
Старый 24.06.2012, 18:39
Интересующийся
Отправить личное сообщение для gunsoy Посмотреть профиль Найти все сообщения от gunsoy
 
Регистрация: 13.01.2012
Сообщений: 23

ajax javascript
Здравствуйте
Есть такой код

nam - id поля input
namer - id поля div

document.getElementById('nam').onkeypress=function() {
var link;
var url;
var ris=document.getElementById('nam').value;
if(window.ActiveXObject)
{
link=new ActiveXObject("Microsoft.XMLHTTP");
}
else
{
link=XMLHttpRequest();
}
url="prov.php?ris="+encodeURIComponent(ris);
link.open('GET', url, true);
link.onreadystatechange=function() {
if (link.readyState==4)
 {
document.getElementById('namer').innerHTML=link.responseText;
 }
}
link.send(null);
}


И файл prov.php

<?php
if(isset($_GET['ris']))
echo $_GET['ris'];
?>


Работает не совсем так как нужно

1) При вводе в форму одного символа наприер 's' В поле c id 'namer' не записывается ничего хотя должно вывести 's' При вводе еще одного символа 's' в поле c id 'namer' выводится один символ 's' хотя должно вывести 'ss' При следующем вводе выводит 2 символа 'ss' вместо трех То есть выводит то что было в поле c id 'nam' до ввода туда следующего символа

2) В броузере IE при нажатии некоторых клавиш к примеру 'delete' событие onkeypress не срабатывает

3) Раньше пользовался ajax в JQuery И в серверном файле на php делал такую проверку

if(isset($_SERVER['HTTP_X_REQUESTED_WITH']) && ($_SERVER['HTTP_X_REQUESTED_WITH']=='XMLHttpRequest'))

И при отправке данных методом ajax возвращало true
Почему в JavaScript возвращает false?


Ответьте кто на что сможет

Спасибо за внимание
Ответить с цитированием