Перейти к содержимому


Пользователь месяца
ShowPrint ShowPrint 1-й за Сентябрь
Очков активности: 283 2 темы, 21 сообщение, 7 баллов репутации
Сайт: ShowPrint.ru
ТОП самых активных за этот месяц
  • Фотография Medvedoc
    #1

    Medvedoc
    Очков активности: 432 8 тем, 48 сообщений, 4 балла репутации

  • Фотография ShowPrint
    #2

    ShowPrint (ShowPrint.ru)
    Очков активности: 216 Вне конкурса за определение пользователя месяца

  • Фотография BLIK
    #3

    BLIK
    Очков активности: 180 Вне конкурса за определение пользователя месяца

  • Фотография WGN
    #4

    WGN (worldgamenews.com)
    Очков активности: 79.5 Вне конкурса за определение пользователя месяца

  • Фотография Алексей111
    #5

    Алексей111 (xvideo24.ru)
    Очков активности: 66 8 тем, 20 сообщений, 1 балл репутации

  • Фотография Ixman
    #6

    Ixman (o5cat.ru)
    Очков активности: 54 0 тем, 12 сообщений, 3 балла репутации

  • Фотография Игорь Ку
    #7

    Игорь Ку (dudesday.ru)
    Очков активности: 49.5 3 темы, 2 сообщения, 3 балла репутации

  • Фотография yuran
    #8

    yuran (yurbol.ru)
    Очков активности: 34.5 1 тема, 20 сообщений, 1 балл репутации

  • Фотография Zevss
    #9

    Zevss (domles43.ru)
    Очков активности: 22.5 2 темы, 9 сообщений, 1 балл репутации

  • Фотография devpro
    #10

    devpro
    Очков активности: 13.5 0 тем, 9 сообщений, 1 балл репутации

  • Показать весь ТОП 10

Kwork.ru - услуги фрилансеров от 500 руб.

Поддержите форум! =)
Апдейты
  • Яндекс тИЦ: 26.09.2018
  • Яндекс выдача: 16.10.2018
Топ 5 участников по репутации


Объединение форм

#1 v1ex

v1ex
  • Неактивные
  • 225 сообщений
  • Репутация: 0
0

Отправлено 22 June 2009 - 16:08

Короче, такая ситуация.
Имеется страница, есть три формы:
1. Выбор нескольких файлов;
2. Какие-то специфические данные;
3. Какие-то специфические данные;

Вторая и третья форма расположены на вкладках. Какая вкладка открыта, такая форма и отправляется.

Данные первой формы должны, как-бы присоединяться к данным второй или третей формы (т.е. данные первой формы должны отправляться при любых обстоятельствах). Есть идеи, как такое реализовать?

У меня впринципе есть идея - при сабмите формы (второй или третей), через DOM вставлять в скрытый DIV (ну или как нибудь так) поля первой формы. Но почему-то у меня душа к такому подходу не лежит.

P.S.
Не предлагать делать одну форму, а уже на обработчике по каким-либо условиям проверять, какие данные нужно принимать. Просто первая и вторая формы и без этого сложные, и в итоге сам обработчик будет очень запутанный и через пару месяцев мне будет сложно, что-либо в нем понять (просто проект в дальнейшем будет модифицироваться).

 

 

  • 0

#2 v1ex

v1ex
    Topic Starter
  • Неактивные
  • 225 сообщений
  • Репутация: 0

Отправлено 22 June 2009 - 16:42

Все, кажется придумал решение:
Вообще не будет ни одной формы, будут чисто поля. При клике на кнопку "отправить", с помощью JS создам форму (не размещая ее в документе), добавлю в нее необходимые данные из полей и отправлю на необходимый URL.
  • 0

#3 yury

yury
  • Пользователь
  • 642 сообщений
  • Репутация: 188

Отправлено 22 June 2009 - 16:57

v1ex,
а чем это отличается от полностью динамической формы на js? которая генерится в зависимости от ответов юзера.
единственная проблема динамической формы - все варианты надо учитывать в "и без того запутанном" обработчике, но и в вашем варианте тоже самое будет.
  • 0

#4 v1ex

v1ex
    Topic Starter
  • Неактивные
  • 225 сообщений
  • Репутация: 0

Отправлено 22 June 2009 - 18:15

Тем, что в полностью динамической форме, она динамически создается, т.е. никаких лишних полей не будет и отправляются только нужные данные. А у меня как-бы две динамические формы + одну статическую надо "приклеить", и если это все запихнуть в одну форму, на сервер уйдет много данных не нужных, и при этом всех их надо обработать в одном обработчике.

А в моем решении, я просто на клиенте напишу парочку if..else, и нужные данные отправлю на один из обработчиков. И в моем варианте "тоже самое" не будет :)


  • 0

#5 yury

yury
  • Пользователь
  • 642 сообщений
  • Репутация: 188

Отправлено 22 June 2009 - 18:32

две динамические формы + одну статическую надо "приклеить",

- это всего лишь визуализация (хоть 10 закладок с виртуальными формами делай).
А фактически: сабмит один (даже если он и шлет данные на разные обработчики, по ситуации), значит и форма реально одна.
Впрочем, вам виднее, как эту конструкцию обозвать, главное, чтоб было удобно и работало. :)
  • 0

#6 v1ex

v1ex
    Topic Starter
  • Неактивные
  • 225 сообщений
  • Репутация: 0

Отправлено 22 June 2009 - 19:09

В принципе да, субмит один, просто он формируется динамически (как и данные которые будут передаваться), в зависимости от того, какая вкладка открыта.

Впрочем, вам виднее, как эту конструкцию обозвать, главное, чтоб было удобно и работало. :)

Точно :)
  • 0

#7 ZiTosS

ZiTosS
  • Неактивные
  • 5148 сообщений
  • Репутация: 8

Отправлено 22 June 2009 - 19:19

Я бы сделал так:
1) Есть одна страница. 1 форма.
2) Отправка всех данных идёт одной кнопкой, Ajax. Какие данные отсылать решает функция js.
3) Легче всего радиокнопку поставить, типа одна вкладка или вторая
  • 0

#8 v1ex

v1ex
    Topic Starter
  • Неактивные
  • 225 сообщений
  • Репутация: 0

Отправлено 22 June 2009 - 19:39

Ну я так-же делаю, только у меня отправка не с помощью аякс (не тот случай, когда аякс нужно использовать), и проверяю не через поле, а по ID открытой вкладки :)


  • 0

#9 ZiTosS

ZiTosS
  • Неактивные
  • 5148 сообщений
  • Репутация: 8

Отправлено 22 June 2009 - 20:10

Ну и так можно, всё зависит от нужд. Вот если вкладки будут добавляться, то надо правильно описать функцию проверки по ID.
  • 0

#10 Вячеслав

Вячеслав
  • Пользователь
  • 381 сообщений
  • Репутация: 2

Отправлено 30 June 2009 - 21:18

Ну я так понимаю вкладки на JS? Тогда можно сделать так:
 

<form action=''>
<div id='вкладка_1'>
/***поля первой формы***/
</div>
<div id='вкладка_2'>
/***поля второй формы***/
</div>
<div id='вкладка_3'>
/***поля третей формы***/
</div>
/***кнопка***/
<input type='submit' value='отправить'>
<form>

То есть отправляться форма будет с третьей вкладки(и можно запретить доступ к второй и третьей пока не заполнены поля в первой...) , а в обработчике удалять(unset) пустые переменные из полей формы.


  • 0

robot

robot
  • Пользователь PRO
  • 2652 сообщений
  • Репутация: 85


Похожие темы

  Название темы Автор Статистика Последнее сообщение

Оформление форума – IPBSkins.ru