Много <form> на странице

NetWood

Well-Known Member
Lotus team
17.04.2008
370
16
Питер
#1
Камрады! чегой то запутался...
На webе требуется поставить несколько форм с акшонами. Скажем там логин, поиск и юзер док для изменения.
Обычно пользовался доминошной одной - там все работало. Одна "родная" форма на странице - нет проблем...
Тут кручу несколько.
Для нового дока работает так
</form><form onsubmit="return Validator.validate();" method="post" action="<@If(@IsNewDoc;"Person?CreateDocument";"")>" name="PersonWeb">
- для нового все отрабатывает.

вот с action для изменения дока проблем
ставил @If(@IsNewDoc;"Person?CreateDocument";"(UserProfiles)/"+@Text(@DocumentUniqueID)+"?Edit")
так по субмиту не отрабатывается агент WQS, даные не сохраняются и док просто переоткрывается на редактирование.

не пойму где тормоза у меня :)

re: сабмит вот такой
<script>document.write('<INPUT TYPE=BUTTON VALUE="'+text_buttonregister+'" onclick="_doValidate()" CLASS="inputbutton">')</SCRIPT>
function _doValidate(){
if(document.forms['PersonWeb'].onsubmit()) document.forms['PersonWeb'].submit();
}
 

Kizarek86

Well-Known Member
Lotus team
20.07.2007
861
6
31
Россея матушка!)
#2
вот с action для изменения дока проблем
ставил @If(@IsNewDoc;"Person?CreateDocument";"(UserProfiles)/"+@Text(@DocumentUniqueID)+"?Edit")
так по субмиту не отрабатывается агент WQS, даные не сохраняются и док просто переоткрывается на редактирование.
а где тут сохранение документа?
 

Kizarek86

Well-Known Member
Lotus team
20.07.2007
861
6
31
Россея матушка!)
#4
так вот же document.forms['PersonWeb'].submit();
Это сохранение, но в вашей кнопку с кодом:
@If(@IsNewDoc;"Person?CreateDocument";"(UserProfiles)/"+@Text(@DocumentUniqueID)+"?Edit")
Команды на сохранение нету...открытый документ просто закрывается, и открывается на редактирование.
 
K

K-Fire

Гость
#5
Когда документ создается, относительный урл: /FormName?CreateDocument
Когда документ открывается на редактирование, относительный урл: /0/UNID?EditDocument.

В общем где-то тут собака порылась :D
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
2
34
Kiev, Ukraine
#6
а в чем смысл такого решения, т.е. нескольких объектов форм на одной?..
может можно иначе решить, без влезания в такие сложности?..
 

NetWood

Well-Known Member
Lotus team
17.04.2008
370
16
Питер
#7
Предварительно всем спасибо за комменты, но истина где-то рядом. То есть не найдена :rolleyes:
Вот смотрите сами.
kizarek прав. так и выходит "просто закрывается, и открывается на редактирование. "
K-Fire /0/UNID?EditDocument. = (UserProfiles)/"+@Text(@DocumentUniqueID)+"?Edit у меня так и написано.
Akupaka так надо из соображений дизайна и пр. на странице есть форма для логина, есть форма для поиска и там же редактирование данных юзера - над чем и бьюсь. Новый док работает, а редактирование нет :)

Просто, оно конечно все работает на одной штатной форме domino. И субмиты и валидаторы и пр.
Вот усложнил себе задачу - и уперся рогом.
 

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 438
351
homepage.mac.com
#8
есть всякие OnSubmit поле $$Return
чего в WQS упираться
потом - домина генерит контент и ждет его в к-л сопоставимой форме, есть уверенность - что расковыряв его генерацию, получим его адекватную реакцию? У меня нет
Эти все закидоны со многими формами - ... неправильно это (да и зачем)
ведь используется JS, берите фрэйворк (типа jQuery) и леписте чего хотите
нужен вызов агента - зовите напрямую или через открытие нового дока (WQO)
есть всякие опции формы (в дизайнере) - типа генерации полей и хтмл, тоже влияет (и особливо на JS)
SaveOptions всякие, кот. запрещают сохранение
вопщем - заставлять нас разгребать инконсистент ваших идей - нечестно
 

NetWood

Well-Known Member
Lotus team
17.04.2008
370
16
Питер
#9
Премного благодарен за коменты повторно. Нашел причину :rolleyes:)))
Что называется читайте хелп товарисчи...
SaveDocument
The SaveDocument command is used as the POST action of a document being edited. Domino updates the document with the new data entered in the form.
Syntax
http://Host/Database/View/Document?SaveDocument

всместо ..."?Edit" надобно ставить "?Save" и все заработало.

to Imike
у меня там целый зверинец и $$Return и WQS и WQO - все задействовано. Проверяю где что. WQO - генерю капчу. WQS проверяю капчу и валидности юзера и чтоб e-mail повторный не натыкали. и пр. пр. до AJAX не добрался исчо.
формы несколько надо тоже. где логин, где поиск слету. упражняюсь в общем. ondblclick="return Validator.validate(); - очень удобно кстати

а то что jQquery и Prototype - это как раз и используется тоже по полной. Верная тема.
Еще раз сэнкс :)
[закрыто]
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
2
34
Kiev, Ukraine
#10
а ежели не жалко, может сможешь научить общественности тому чего добивался? т.е. выложить пример реализации на одной форме и поиска, и логина т.п. :rolleyes:
 

NetWood

Well-Known Member
Lotus team
17.04.2008
370
16
Питер
#11
выложить пример реализации
Вот плиз 3,29мега. 1 мега квоты тут явно мало... не загрузить :(
http://forum.sysadmins.ru/files/domquery_141.zip
- пример валидатора на Prototype на "родной форме domino"
- пример валидатора на jQuery + форма логин + форма поиск + математическая капча
- недоделанное создание pdf на itext (тут было вроде обсуждение на DXL - но ниасилил)
- пример галереи рисунков на jQuery

Дизайна в базе нет. Это куски из проекта для примера, так что сильно не критикуйте :wacko: Проект уж больно монстровитый - все сюда тащить нет смысла.

ку:во вьюхе Search исправить колонку на
"[<A HREF=\"java script:_doGotoDoc('"+@Text(@DocumentUniqueID)+"' , '"++"')\" CLASS=\"viewmain\">"+@ReplaceSubstring(Subject;ListHTML1;ListHTML2)+"</A><SPAN CLASS=\"viewsub\"><BR>"+"("+@Text(test)+", "+@Text(Name)+")"+"</SPAN><BR>]"