Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> При innerHTML не видно нового контента 
V
    Опции темы
supercelt
Дата 24.9.2008, 10:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 658
Регистрация: 25.8.2005

Репутация: 1
Всего: 1



У меня сделано так, что контент подгружается аяксом в див. 

главная страница
Код

<a href="#" onclick="show_reg_form()">Регистрация</a>
<div id="main_content">
Контент главной стр. по умолчанию
<div>


При нажатии на ссылку, вместо главного контента должна появиться форма регистрации

функция обработки клика для отправки в аякс
Код

function show_reg_form()
{
var show = new JsHttpRequest();
show.onreadystatechange = function() 
  {                
    if(show.readyState == 4) 
    {
    getID('main_content').innerHTML = show.responseJS.show_otvet;
    hideload();
    }
  }
show.open('POST', 'registration.php', true);// куда отправлять
show.send({action:'registration'});
showload();
}


Обработка аякса в пхп
Код

<?php
require_once('functions/functions.php');
require_once('lib/JsHttpRequest/JsHttpRequest.php'); //подклучаем файл
$Js = new JsHttpRequest('windows-1251'); //кодировка ответов windows-1251

if(isset($_POST['action']) and $_POST['action']=='registration')
{
//sleep(1);
$GLOBALS['_RESULT']['show_otvet']='
         <table class="reg_content" width="90%" border="0" align="center" cellpadding="1" cellspacing="1">
            <tr>
              <td colspan="2" align="center"><strong>Регистрация</strong><br /><br /></td>
              </tr>
            <tr>
              <td align="right">Логин</td>
              <td align="left"><input class="input_reg" type="text" name="user_login" id="user_login" /></td>
            </tr>
            <tr>
              <td align="right">Пароль</td>
              <td align="left"><input class="input_reg" type="password" name="user_password" id="user_password" /></td>
            </tr>
            <tr>
              <td align="right">Пароль ещё раз</td>
              <td align="left"><input class="input_reg" type="password" name="user_password2" id="user_password2" /></td>
            </tr>
            <tr>
              <td align="right">Имя</td>
              <td align="left"><input class="input_reg" type="text" name="user_name" id="user_name" /></td>
            </tr>
            <tr>
              <td align="right">E-mail</td>
              <td align="left"><input class="input_reg" type="text" name="user_email" id="user_email" /></td>
            </tr>
            <tr>
              <td>&nbsp;</td>
              <td align="left"><div id="create_button"><input class="input_button_con" type="button" name="reg" id="regi" value="Регистрация" onClick="registration()" /></div>
              <div id="ajaxload"><img src="../images/ajax-loader.gif"></div>
              </td>
            </tr>
            <tr><td colspan="2" align="center"><br /><br /><div id="reg_result"></div></td></tr>
          </table>
';
}
?>


Когда заполняешь форму и жмёшь на кнопку зарегиться, то всё тоже идёт через аякс. Фишка в том, что функция registration() не видит форму. А если быть на главной стр и потом нажать на регистрацию, то появится форма,  НО если посмотреть исходный хтмл код, то там остаётся старый контент. В чём может быть дело?
PM   Вверх
Snowcore
Дата 24.9.2008, 12:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 23.9.2008

Репутация: нет
Всего: нет



ответ приходит правильный? Посмотрите FireBug'ом.
Динамическая замена DOM элементов - достаточно тонкая тема, здесь могут быть глюки
PM MAIL   Вверх
supercelt
Дата 24.9.2008, 14:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 658
Регистрация: 25.8.2005

Репутация: 1
Всего: 1



Решение проблемы: На стрвнице было поле с таким же именем
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1095 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.