На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! ПРАВИЛА РАЗДЕЛА
Прежде чем задать вопрос, зайдите в раздел FAQ, возможно там уже есть ответ на него.
Если вы хотите вставить код в сообщение, то пожалуйста выделяйте его тегом [code=dfp] ... [/сode].
Для этого используйте кнопку [code=dfp] в форме ответа или комбобокс, если нужно вставить код на языке, отличном от Delphi for PHP.
Модераторы: ViktorXP, vicis
  
> Доступ к свойствам компонентов из js. , Изменить свойство TableName у компонента Table
    Доброго времени суток.

    Подскажите, пожалуйста, новичку как из java скрипта изменить свойство TableName, компонента Table (из вкладки Data Access).

    Спасибо!
      JavaScript выполняется на клиенте, а для запроса к базе нужно в любом случае выполнять команду на сервере.
      По этому любым способом передаёш какой нибудь код на сервер, по которому через if или switch меняеш имя таблицы.
      Например:
      передаём так
      ExpandedWrap disabled
                         if (confirm("Вы уверены, что хотите прочитать данные из таблицы 1?"))
                           {
                           location.href="http://xsite.com.ua/index.php?xtable=1";
                           }
                           else
                           {
                           location.href="http://xsite.com.ua/index.php?xtable=2";
                           }

      или
      ExpandedWrap disabled
                         if (confirm("Вы уверены, что хотите прочитать данные из таблицы 1?"))
                           {
                           location.href="http://xsite.com.ua/index.php?xtable=table_macho_men";
                           }
                           else
                           {
                           location.href="http://xsite.com.ua/index.php?xtable=table_bad_girl";
                           }

      ловим в форме так
      ExpandedWrap disabled
        //   получаем в событии
        BeforeShow($sender, $params)
         
                            $action=$this->input->xtable;
                            if (is_object($action))
                            {
                              $this->TempQuery->Active = False;
                              $this->TempQuery->SQL = 'select * from '.$action;
        ...


      для Table
      $this->Table1->TableName = $action;

      Вопрос в том зачем его менять. Настроил форму на таблицу и вызывай её.
      Сообщение отредактировано: vicis -
        Спасибо за ответ.

        >>Вопрос в том зачем его менять.

        В базе есть много таблиц с заранее неизвестными именами, соответсвенно нужна возможность динамически изменять TableName,
        в зависимости от того какая таблица нужна. Может есть более рациональные решения для таких задач?
          Как минимум использовать не Table, а Query
          Но если задача не ограничивается просмотром, а для каждой таблицы нужен специальный ввод, то отдельную форму для отдельной подзадачи

          Цитата alex19 @
          много таблиц с заранее неизвестными именами

          Это только для универсального просмотрщика таблиц подойдёт.
          Проще PhpAdmin использовать.
          А для большинства других случаев есть вероятность, что база неправильно спроектирована...
          0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
          0 пользователей:


          Рейтинг@Mail.ru
          [ Script execution time: 0,0239 ]   [ 15 queries used ]   [ Generated: 3.05.24, 18:17 GMT ]