Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 31.05.2011, 23:24
Интересующийся
Отправить личное сообщение для DmitryOpalev Посмотреть профиль Найти все сообщения от DmitryOpalev
 
Регистрация: 05.11.2010
Сообщений: 22

Ajax не обрабатывает запрос
Здравствуйте.
Есть JS и небольшая форма:
<div id='wait'></div>
<input type='text' id='field'><br>
<input type='button' value='Отправить' onClick="Send()">

<script>
function Send()
{
   var link;
   var param;
   var txt = document.getElementById('field').value;
   if(txt=="") {alert("Поле не заполнено"); return false;}
   if(window.XMLHttpRequest) {link = new XMLHttpRequest();}
   else 
   {if(window.ActiveXObject) 
      {
      var XMLHTTP = ["MSXML2.XMLHTTP.6.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"];
      for(i=0; i<4; i++)
         {
         try{link = new ActiveXObject(XMLHTTP[i]); break;}
         catch (e) {}
         }
      }
   }
   if(!link) {alert("Извините, но Ваш браузер не поддерживает Ajax"); return false;}
   param = "string="+encodeURIComponent(txt);
   link.open("POST","/jquery.php","true");
   link.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
   link.onreadystatechange = function() {DataRequest(link);}
   link.send(param);
   document.getElementById('wait').innerHTML = "<img src='/images/loader.gif' width='12'>Загрузка...";
}

function DataRequest()
{
   if(link.readyState == 4)
      {
         if(link.status == 200)
         {
            var wait = link.responseText;
            document.getElementById('field').value=" ";
            document.getElementById('wait').innerHTML = wait;
         }
      }
   else
      {
      document.getElementById('wait').innerHTML = "Ошибка";
      }
}
</script>

В этом же каталоге есть jquery.php:
<?php
Header('Content-type: text/html; charset=utf-8');
if($_POST['string'])
{echo "Запрос получен";}
else {echo "Данные не получены";}
?>

Но крутилка с надписью "Загрузка" никак не пропадает :unsure: Опера ошибок не нашла.
Помогите разобратся, в чем тут дело

Последний раз редактировалось DmitryOpalev, 31.05.2011 в 23:40.
Ответить с цитированием
  #2 (permalink)  
Старый 01.06.2011, 02:47
Интересующийся
Отправить личное сообщение для qst13r1245r12 Посмотреть профиль Найти все сообщения от qst13r1245r12
 
Регистрация: 18.03.2010
Сообщений: 19

DataRequest() -> DataRequest(link)
и сохрани jquery.php не в ANSI, а в UTF-8

Последний раз редактировалось qst13r1245r12, 01.06.2011 в 02:56.
Ответить с цитированием
  #3 (permalink)  
Старый 05.06.2011, 18:17
Аспирант
Отправить личное сообщение для DmitryT Посмотреть профиль Найти все сообщения от DmitryT
 
Регистрация: 19.02.2011
Сообщений: 53

Думаю, что возможна причина в link, она объявлена как локальная переменная внутри Send() и видно её только там, и еще если функция DataRequest() объявлена без параметров, как Вы подставляете параметр при её вызове?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ajax запрос. Возврат массива. Rinas jQuery 5 09.04.2011 18:58
Сделать AJAX запрос dumbass88 jQuery 1 11.04.2010 11:46
AJAX запрос на другой протокол Veresc AJAX и COMET 2 18.09.2009 18:47
Синхронный запрос данных по AJAX Shasoft AJAX и COMET 2 03.03.2009 14:07
ajax запрос с подгружемным js HelpeR AJAX и COMET 1 27.10.2008 12:44