Javascript.RU

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

пустой результат responseText
Здравствуйте, уважаемые знатоки!

Есть проблемка с AJAX'ом, помогите разобраться.

Файл 111.js

function process(targetid, containerid){
  var page_request = false
  if (window.XMLHttpRequest) // if Mozilla, Safari etc
    page_request = new XMLHttpRequest()
  else if (window.ActiveXObject){ // if IE
    try {
      page_request = new ActiveXObject("Msxml2.XMLHTTP")
    } 
    catch (e){
      try{
        page_request = new ActiveXObject("Microsoft.XMLHTTP")
      }
      catch (e){}
    }
  }
  else
    return false
  page_request.onreadystatechange=function(){
    loadpage(page_request, containerid)
  }
  var obj = document.getElementById(targetid);
  if (targetid.indexOf('select') + 1) {
    if (obj.selectedIndex >0) {
      name = encodeURIComponent(obj.options[obj.selectedIndex].value);
    }
  }
  else name = encodeURIComponent(obj.value);
  url = "index2.php?&func=Test1&name=" + name;
  page_request.open('GET', url, true)
  page_request.send(null)
}

function loadpage(page_request, containerid){
  if (page_request.readyState == 4 && page_request.status==200)
    document.getElementById(containerid).innerHTML=page_request.responseText
}


В файле index2.php запускается функция Test1

switch( $func ) {
  case 'Test1':        
    Test1();
    break;
  default:
    break;
}

function Test1() {
  $emitent = $_REQUEST['name'];
  echo $emitent;
}




И всё это дело запускается кодом

<select size=1 name='emitent' id='emitentselect'>
<option value='1'>1
<option value='2'>2
</select>
<input type='button' value='Выбрать' onclick='process("emitentselect","divMessage"); '/>
<div id='divMessage' />


По идее, после клика по кнопке должен в divMessage появиться выбранный пункт списка. Но не выводится.
Пробывал тестовую ссылку делать

url = "index2.php?&func=Test1&name=" + name;
document.getElementById(containerid).innerHTML = "<a href="+url+">Ссылка</a>";


Она появляется и пропадает, но если успеть кликнуть, то открывается чистая страница с нужным текстом.
Т.е. при переходе по ссылке, например index2.php?&func=Test1&name=1 открывается страница с цифрой 1, т.е. и сама функция Test1 работает как надо, получает и передаёт данные.
А вот почему это данные не появляются здесь document.getElementById(containerid).innerHTML=pag e_request.responseText - не понимаю.

Объясните, пожалуйста, почему.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как текст из responseText преобразовать в теги? Бобр AJAX и COMET 24 26.02.2010 04:37
readyState == 4, а responseText недоступен KPblCEHblLLl AJAX и COMET 4 19.11.2009 11:00
результат eval() в innerHTML onejsquestion Общие вопросы Javascript 0 24.10.2009 17:54
Подскажите, пжлст, как вывести в тот же документ результат ф-ции? LexXxeL Элементы интерфейса 4 13.05.2009 13:26
Результат вычислений в экспоненциальной форме Sharp Общие вопросы Javascript 19 02.04.2009 21:59