1. мы должны отправлять на сервер данные полей только той группы которую выбрали, т.е. которая видна
2. мы должны сохранять при переключении между видимыми частями формы уже введенные данные, т.е. пользователь может переключаться между частями формы до сабмита с сохранением введенной инфы.
в вышеприведенном коде работает пункт 2, но отправляет на сервак всю форму... и display=none тоже... а этого не нужно
пробовал делать по-другому - не скрывать содержимое контейнеров, а удалять innerhtml, но тогда он не хранит уже введенное пользователем при переключении остальное херится....
как бы мне совместить, сильно не замарачиваясь, оба требования?
P.S. в javascripte я не профи... сложные разборы DOM не осилю...
Название: Вот такая вот задачка...
Отправлено: APL от 24 Октября 2008, 15:44:07
как минимум IE снова отправляет всю форму... несмотря на innerhtml = \'\' :(
Название: Вот такая вот задачка...
Отправлено: brainkiller от 24 Октября 2008, 18:36:14
В порядке бреда: попробуй, скрывая часть формы, присваивать инпутам внутри неё свойство disabled.
Название: Вот такая вот задачка...
Отправлено: APL от 24 Октября 2008, 18:42:13
brainkiller
это понятно... автоматизировать нужно... чтоб само выбирало имена формы из контейнера и дазайбл делало... а я js не так хорошо знаю...
Название: Вот такая вот задачка...
Отправлено: brainkiller от 24 Октября 2008, 20:23:08
в процедуру show():
var partToHide = ( id == 1 ) ? document.getElementById(\'tr2\') : document.getElementById(\'tr1\'); var inputs = partToHide.getElementsByTagName(\'INPUT\'); for (var i = 0; i < inputs.length; i++) { inputs(i).disabled = true; }
Аналогично для всяких там select и textarea. Аналогично вешаем disabled = false на элементы другой части формы, если нужно переключаться туда-сюда.
Работоспособность не тестировал. Оставляю Вам. Приятных выходных! :)