Где хранить данные формы?

Poster

Новичок
Где хранить данные формы?

Ситуация.
Имеется форма с бооольшим количеством полей.

Юзер последовательно слева направо сверху вних из заполняет.

Встречает дропбокс - "Заказчик".
Смотрит его, а там нет нужного. Видит рядом ссылочку - "Добавить заказчика".
"Ага!" - думает, это то что мне нужно.

Жмет. В поп-апе создает нового заказчика, жмет "Сохранить заказчика", поп-ап закрывается, парент перегружается... и перед этим вбитые юзером данные теряются.

Как такого избежать? Где(как) сохранить еще не отправленные на сервер данные?

Спасибо.
 

Фанат

oncle terrible
Команда форума
перегружать парент не надо

-~{}~ 25.04.05 19:30:

sakon, ты, как всегда, пальцем в небо
 

Poster

Новичок
Фанат, дык а как новый Заказчик появится в дроп-боксе?
Заказчики тянутся в дроп-бокс из БД

надобно перегружать парента
 

Фанат

oncle terrible
Команда форума
нет не надо
если ты открываешь новое окно яваскриптом, то кто тебе мешает яваскриптом же формировать селект?
 

Poster

Новичок
наверное незнание яваскрипта.

Фанат, а ты именно так - яваскриптом - делаешь?

Изложи свой метод пожалуйста.
 

Фанат

oncle terrible
Команда форума
я так не делаю, но это ничуть не мешает так делать тебе.
в любом случае,яваскрипт тебе учить придётся, поскольку пхп-то тут всё равно не при чём
 

sakon

П..и.н..ок
Фанат
Плиз. Поделись опытом, как делаешь сам. Хотя бы в общих чертах.
 

Tor

Новичок
что тебе мешает не обновлять парент, а сабмитить его и снова показывать введенные данные?
 

Popoff

popoff.donetsk.ua
Способ 1)
разместить комбобокс с заказчиками самым верхним левым

Способ 2)
<table><tr><td id="id-user"><select>...</select></td></tr></table>
<script>
function user_set(s)
{
document.getElementById('id-user').innerHTML=s;
}
</script>
а после обработки в попапе вызываешь функцию типа такого:
<script>
window.opener.user_set('<select>...весь хтмл-код селекта...</select>');
</script>

способ 3)
<select id="id-user">...</select>
<script>
function user_add(v,s)
{
var o=document.createElement('<option value="'+v+'">');
o.innerHTML=s;
document.getElementById('id-user').appendChild(o);
}
</script>

со скриптами мог где-нить опечататься - в браузере не проверял; ты из этих примеров можешь узнать способы и названия функций.
 

Poster

Новичок
Popoff, спасибо, буду пробовать.
Третий способ мне кажется самым правильным в моей задаче.
 
Сверху