[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: пустой результат responseText
goldenmouse
Здравствуйте, уважаемые знатоки!

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

Файл 111.js
PHP
function process(targetidcontainerid){
  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_requestcontainerid)
  }
  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'urltrue)
  
page_request.send(null)
}

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


В файле index2.php запускается функция Test1
PHP
function Test1() {
  
$emitent $_REQUEST['name'];
  echo 
$emitent;
}


И всё это дело запускается кодом
HTML
<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 появиться выбранный пункт списка. Но не выводится.
Пробывал тестовую ссылку делать
PHP
url "index2.php?&func=Test1&name=" name;
document.getElementById(containerid).innerHTML "<a href="+url+">Ссылка</a>";

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



Спустя 24 минуты, 13 секунд (24.03.2010 - 22:02) Adil написал(а):
покажи код index2.php

Спустя 37 минут, 21 секунда (24.03.2010 - 22:40) goldenmouse написал(а):
Из значимого кода могу привести это:
PHP
switch( $func ) {
  case 
'Test1':        
    
Test1();
    break;
  default:
    break;
}

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

Также есть другие функции, но они отношения не имеют.

Спустя 42 минуты, 56 секунд (24.03.2010 - 23:23) Adil написал(а):
вместо
switch( $func ) {

попробуй
switch( $_GET['func'] ) {

тк возможно register globals отеключен

Спустя 8 часов, 19 минут, 37 секунд (25.03.2010 - 07:42) goldenmouse написал(а):
Нет, в плане выбора функции всё работает.
При переходе по ссылке, например index2.php?&func=Test1&name=1 открывается страница с цифрой 1, т.е. и сама функция Test1 работает как надо, получает и передаёт данные.
А вот почему это данные не появляются здесь document.getElementById(containerid).innerHTML=page_request.responseText - не понимаю.
Быстрый ответ:

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