[ dmn @ 05.07.2006. 12:32 ] @
u html-u je poznat problem ugnjezdjenih formi, tj. ako imamo formu u formi, ili formu u formi koja je u formi , itd... postoji problem oko slanja podataka iz forme, tj. formi.
da li neko mozda zna za neki trik, workaround, harikiri da svi podaci lepo budu prosledjeni?

Gugl nije znao da mi odgovori na ovo pitanje.
Unapred hvala
[ kelja @ 05.07.2006. 12:37 ] @
Is it possible to have nested forms?

No, the HTML syntax explicitly forbids them.

Google-odgovor na tvoje pitanje;-)I dodatak:
No, you need to use a single form with two submit buttons and to set up
the server-side form handler so that it recognizes which button was
used and branches accordingly.

Isecak sa nekog foruma...
[ jablan @ 05.07.2006. 12:45 ] @
A za šta bi ti to služilo?
[ dmn @ 05.07.2006. 13:39 ] @
Citat:
jablan: A za šta bi ti to služilo?


tesko je objasniti, ali evo slike pa ce se bolje videti. Imam tabelu , sa checkboxovoma s'tim sto istovremeno moram da budem u mogucnosti da brisem/menjam unose (ikonice s' leve strane), ali zahtev je da se NISTA ne prikazuje u URL-u (znaci GET metod otpada), pa sam za svaku vrstu napravio malu formicu koja se salje klikom na ikonicu. Klikom na submit dugme se salju podaci iz checkbox polja. Mozda nije bas najjasnije ali, eto. Problem je sto submit dugme ne radi!

btw, hvala kelja, i ja sam znao da postoji problem, ali sam se nadao da postoji i resenje :)
[ dmn @ 05.07.2006. 13:45 ] @
inace, probao sam i sa javascriptom, gde sam na onclick event dugmeta pozvao submit() funkciju forme sa odgovarajucim ID-om, tada se forma (kao) posalje, ali podaci ne stizu na cilj.
[ jablan @ 05.07.2006. 13:55 ] @
I ja ne vidim potrebu za gnježđenjem. Imaš potpuno uobičajenu formu.
[ dmn @ 05.07.2006. 14:00 ] @
ne zelis da vidis kod veruj mi u pitanju je coldfusion :)) ali ajde poslacu html source, ali ne zaboravi - sam si trazio:
Code:

<form action="index.cfm?event=updateRoles" method="POST" id="mainForm">    
                <tr>
                    <td class=TableHeader >Action</td>
                    <td class=TableHeader>Role Name</td>
                     <td class=TableHeader >Show User</td>    
                     <td class=TableHeader >Edit User</td>    
                     <td class=TableHeader >Create User</td>        
                </tr>        
                <tr>                  
                   <form action="index.cfm?event=showRoleDetails" id="roleForm1" method="post" ><input type="hidden" name="id" value="1">
                    <td class=TableRow ><a href="#" OnClick="submitFormConfirm('index.cfm?event=deleteRole', 'roleForm1' ,'Are You sure you want to delete this role?');"  title="Delete This Role"><img src="images/delete_button.gif"></a> &nbsp; <a href="#" onclick="submitForm('roleForm1')"  title="Edit This Role"><img src="images/edit_button.gif"></a></td>
                       </form >
                    <td class=TableRow  title="Administrator, darf alles">Administrator &nbsp;</td>
                    <td class=TableRow >
                        <input type="checkbox" value="1" class="NoBorder"    name = "role_to_permission[1][1]" > 
                    </td>    
                    <td class=TableRow >
                        <input type="checkbox" value="1" class="NoBorder"    name = "role_to_permission[1][2]" > 
                    </td>    
                    <td class=TableRow >
                        <input type="checkbox" value="1" class="NoBorder"    name = "role_to_permission[1][3]" > 
                    </td>    
                </tr>
                
                <tr>
                <td colspan=" 5 " class=TableRow align="right" >&nbsp; </td></tr>
                <tr>
                <td colspan=" 5 " class=TableRow align="center">         <input type="submit" name="g" value="Submit" class="Button"  >                 </td></tr>                </form>


kao sto sam naveo, morao sam za svaki link sa leve strane (za brisanje ili izmenu) da kreiram po jednu formicu, a sve je to u jednoj velikoj formi koja obuhvata celu tabelu, tj. checkbox polja.

Cini mi se da nisam dobro shvacen, ZAHTEV (klijenta) je da linkovi sa leve strane za brisanje i izmenu (ikonice) ne salju promenljive preko URL-a i zato ja koristim gomilu formica.
[ jablan @ 05.07.2006. 14:08 ] @
Citat:
Cini mi se da nisam dobro shvacen, ZAHTEV (klijenta) je da linkovi sa leve strane za brisanje i izmenu (ikonice) ne salju promenljive preko URL-a i zato ja koristim gomilu formica.

A zašto ti taj glavni FORM nije POST na stranicama gde ne klijent to ne želi?
[ dmn @ 05.07.2006. 14:11 ] @
Citat:
jablan: A zašto ti taj glavni FORM nije POST na stranicama gde ne klijent to ne želi?


hmmm....'ajde probaj ponovo, nisam te ukapirao
[ jablan @ 05.07.2006. 14:25 ] @
Kažeš da si ugnježđeni FORM dodao zato što ti je glavni FORM tipa GET, a klijent ne želi parametre u URLu. Ja te pitam zašto glavni form mora da ti bude GET, a ne POST?
[ dmn @ 05.07.2006. 14:34 ] @
Ne, sve forme su u POST-u (i moraju koristiti POST metod), i sve promenljive imaju razlicite (jedinstvene) nazive.
Forme samo moraju biti poslate na index.cfm?event=nekiEvent, zato sto se radi o Mach II frejmvorku koji radi sa eventima.
[ jablan @ 05.07.2006. 14:39 ] @
Ja onda definitivno ne razumem zašto imaš potrebu za ugnježđenim formovima. Možda neko drugi kapira i može lakše da mi objasni?
[ dmn @ 05.07.2006. 14:46 ] @
Ok, probacu jos jednom, ali polako:
dakle imam neku tabelu (koja se moze videti na gorepostovanoj slici), koja ima dve namene:
1) da dodeli odredjenim ulogama (roles), odgovarajuce permisije - za to se koriste checkboxovi
2) da omoguci korisniku da izbrise/izmeni odgovarajucu ulogu, za to sluze ikonice sa leve strane

E sada, to bi se normalno uradilo tako sto bi postojala jedna forma koja bi se brinula o checkboxovima, a ikonice sa leve strane bi bile obican link tipa:
index.cfm?event=deleteRole&id=#ID#
E sada pocinje zaplet: stvar je u tome sto je zahtev posla takav da se ovaj id ne prikazuje u URL-u, pa sam ja pribegao jednoj
, pomalo neuobicajenoj i poprilicno trapavoj metodi da taj ID prosledjujem POST metodom. Da bih koristio post metod potrebna mi je forma.
To znaci da ako u tabeli imam 5 uloga (roles), treba mi 5 posebnim formica koje ce slati "id" na odgovarajucu stranicu + glavna forma koja koja se brine o checkboxovima.

Nadam se da sam sada bio barem malo jasniji.
[ jablan @ 05.07.2006. 15:04 ] @
Citat:
dmn: Ok, probacu jos jednom, ali polako:
dakle imam neku tabelu (koja se moze videti na gorepostovanoj slici), koja ima dve namene:
1) da dodeli odredjenim ulogama (roles), odgovarajuce permisije - za to se koriste checkboxovi
2) da omoguci korisniku da izbrise/izmeni odgovarajucu ulogu, za to sluze ikonice sa leve strane

To je razumljivo, 99% sajtova sa podrškom za različite nivoe pristupa imaju istu ili sličnu formu za editovanje rola.
Citat:
E sada, to bi se normalno uradilo tako sto bi postojala jedna forma koja bi se brinula o checkboxovima, a ikonice sa leve strane bi bile obican link tipa:
index.cfm?event=deleteRole&id=#ID#

Zašto? Zar i jedan i drugi event (brisanje/editovanje role) ne obrađuje jedna te ista skripta? Čak i da ne obrađuje ista skripta, možeš iz javascripta promeniti target forma.
Citat:
E sada pocinje zaplet: stvar je u tome sto je zahtev posla takav da se ovaj id ne prikazuje u URL-u, pa sam ja pribegao jednoj
, pomalo neuobicajenoj i poprilicno trapavoj metodi da taj ID prosledjujem POST metodom. Da bih koristio post metod potrebna mi je forma.
To znaci da ako u tabeli imam 5 uloga (roles), treba mi 5 posebnim formica koje ce slati "id" na odgovarajucu stranicu + glavna forma koja koja se brine o checkboxovima.

Uopšte nije neuobičajeno da se neka akcija prosleđuje POST metodom. Jednostavno, tvoja funkcija submitFormConfirm treba da, umesto što direktno trpa parametre u GET, popuni jedno hidden polje na formi (jednoj jedinoj) stringom "delete", a drugo hidden polje ID-jem role koju treba da brišeš, i zatim pozove submit() te jedne jedine forme koja ti uokvirava sve kontrole na stranici.
[ dmn @ 05.07.2006. 15:19 ] @
mozda ima necega u tome sto pricas.

Hvala, na odgovoru, moram da razmislim....
[ jablan @ 05.07.2006. 15:26 ] @
Citat:
dmn: mozda ima necega u tome sto pricas.

E, hvala, poverenje je osnov dobre saradnje.
[ dmn @ 05.07.2006. 15:40 ] @
To je to.

Izbacio sam ugnjezdjene forme i koristio malo js-a koji je setovao vrednost hidden id polja i menjao target (tj. action) atribut forme. (ova recenica je upucena iskljucivo Jablanu, za ostale nema smisla)

Poceli smo malo konfuzno ali smo se na kraju nasli.

Hvala na pomoci.