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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Ajax - загрузка тела функции из БД 
:(
    Опции темы
Avtor
Дата 30.9.2007, 19:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Код

<head>
  <script language="javascript">
    function treeInit() {
      tree=new Tree();
      <?php
      ...
      ?>
       tree.draw();
    }
  </script>
</head>
<body onload="treeInit();">
  ...
</body>

Так вот узлы дерева в функции treeInit загружаются при помощи php из БД. Как переписать это с помощью ajax (хочу менять тело функции без перезагрузки страницы)?
PM MAIL   Вверх
dsCode
Дата 30.9.2007, 20:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 565
Регистрация: 8.9.2007
Где: Saint-Petersburg

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



Avtor, а как выглядит сформированный код (в смысле уже готовый js-код, который сформировал php) между  <?php   ...   ?>? Если там формируется объект (или массив) нодов дерева, то можно возвращать аяксом такой json и присваивать результат этому объекту (массиву). Т.е. функция (тело) остается преждним, только объявляется переменная для хранения объекта нодов. Так же (если интересует именно тело функции) можно возвращать целую функцию аяксом - простую строку (например 'function(...) { .... }'), а потом проeval'ить ее и присвоить эту функцию какой-нибудь "переменной" var treeInit = eval('результат_запроса');


Это сообщение отредактировал(а) dsCode - 30.9.2007, 20:44


--------------------
the .code inside
:my music
PM MAIL WWW ICQ Jabber   Вверх
Avtor
Дата 1.10.2007, 20:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



А можно поподробнее как возвращать целую функцию аяксом?
PM MAIL   Вверх
dsCode
Дата 1.10.2007, 20:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 565
Регистрация: 8.9.2007
Где: Saint-Petersburg

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



Avtor, 

1. аякс возвращает строку 'function {alert(1); return true;}'
2. в JavaScript: var myFunction = eval(наша_строка_возвращенная_аяксом);

но лучше, повторю, первый вариант - когда тело функции неизменно, и меняются данные (Вас же именно данные динамические интересуют)

Это сообщение отредактировал(а) dsCode - 1.10.2007, 20:50


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


 




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


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

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