webForumDet fria alternativet

forms och table's

16 svar · 414 visningar · startad av munktell

munktellMedlem sedan sep. 200350 inlägg
#1

Hejsan, har litet problem som gör min sida w3 inkompatibel, och tänkte höra om ni hade nån ide att lösa problemet....

Grejen är att jag vill korrekta rad formateringar från ovan o nedan, där av vill jag ej bryta av table'n, och stoppa in <form>'s

Samt helst skulle jag ej vela ta en stor form över allt pga. då måste jag göra en hel drös extra checkar för variabler som ej skall inkluderas beroende på vart jag klickar..

<table><tr><td>
	<form method=post>
</td></tr><tr><td>
	<input type=....>
</td></tr><tr><td>
	</form>
</td></tr><tr><td>
	<form method=post>
</td></tr><tr><td>
	<input type=....>
</td></tr><tr><td>
	</form>
</td></tr></table>
jarvkloMedlem sedan juli 20013 295 inlägg
#2

Hmm....

Som problemet är formulerat borde du kunna köra med

<table><tr><td>
	<form method=post>
	<input type=....>
	</form>
</td></tr><tr><td>
	<form method=post>
	<input type=....>
	</form>
</td></tr></table>

men så enkelt att det är en <input> per <form> kan det väl inte vara? ;)

Har du en länk till sidan så att man kan få en bättre bild av helheten?

munktellMedlem sedan sep. 200350 inlägg
#3

Tyvärr är det ej så lätt...

Har klippt lite, designen ser inte så bra ut just iom att bilder osv ej finns på korrekta stället, samt att funktionaliteten existerar ej heller... men du ser nog problemet...

http://home.student.uu.se/p/pepe1407/temp/test1.html

Där jag skrivit markera, radera, osv... skall det vara submit knappar, sen är det en form för varje olik typ av annons...

LeonLMedlem sedan dec. 20023 175 inlägg
#4

Du behöver inte ha flera form-taggar till det ändamålet. Det enda du behöver göra är att lägga flera knappar i en och samma form, som har olika värden. Du kan sedan kolla vilket värde som har skickats med, för att sedan utföra åtgärden.
Exempel i ASP:

<%
Dim strAction
strAction = Request.Form("submit_action")

If strAction = "markera" Then
  '// Markera
ElseIf strAction = "radera" Then
  '// Radera
ElseIf strAction = "arkivera" Then
  '// Arkivera
End If
%>

(Om det nu är så du menar)

munktellMedlem sedan sep. 200350 inlägg
#5

Fördelen med flera form taggar i detta fallet är att jag ej behöver verifiera vilka som igentligen blivit klickade på eller inte... eftersom klickar man på samtliga "bockarna" och klickar på overifierade annonser, knappen radera skall BARA annonser från overifierade försvinna... så det är helt klart en bekvämlighets grej... (om det ej går att lösa så kommer jag bryta om w3 standarden, men tycka att det är tragiskt att det ej går att göra det jag vill.....)

PepeJeriaMedlem sedan feb. 2003779 inlägg
#6

munktell skrev:

om det ej går att lösa så kommer jag bryta om w3 standarden, men tycka att det är tragiskt att det ej går att göra det jag vill.....

My way or the highway? ;)

munktellMedlem sedan sep. 200350 inlägg
#7

Tjaa, första gången jag stött på att w3c standarden verkligen begränsar... brukar alltid gå att lösa på ett eller annat vis...

Det är så grymt bekvämt att olika forms ej postar in alla andra forms data till hemsidan. Den funktionen hade jag tänkt mig utnyttja hårt i detta fallet... men det verkar komma bli att jag bryter mot standarden.

Har gjort ytterligare ett exempel på hur det fungerar i praktiken... dock bryts det mot w3 standarden... fungerar att klicka på skicka och man ser vad som skickas till sidan överst..

http://home.student.uu.se/p/pepe1407/temp/test2.php

PepeJeriaMedlem sedan feb. 2003779 inlägg
#8

Jag förstår inte riktigt, exakt vad har du för problem? Jag förstår inte vad du menar när du säger " är att jag vill korrekta rad formateringar från ovan o nedan".

Menar du att form-taggarna lägger till plats/space på själva sidan?

munktellMedlem sedan sep. 200350 inlägg
#9

Om du kollar på första exemplet, så är det en <form> från "Publicerade annonser" som avslutas vid "Overifierade annonser" där så startas en ny form upp....
Så det kommer vara EN stor table för det hela... sen i den tablen så finns det flera <form>s, och det är just det som är "olagligt".... test2.php visar ett mer renodlat exempel hur det igentligen fungerar, och varför jag vill ha flera forms..

PepeJeriaMedlem sedan feb. 2003779 inlägg
#10

Oj, tycker att du har onödigt med mycket tabeller för det du vill uppnå. Minska ner med tabellerna, och använd dig av css för att få önskad padding, border etc

Sen det du gör, (om du nu måste ha en form per kategori), är att du kör en table för varje kategori, och så omsluter du varje tabell med en form-tagg.

munktellMedlem sedan sep. 200350 inlägg
#11

kolla på http://home.student.uu.se/p/pepe1407/temp/test2.php sidan igen har mer exakt visat hur tablen och form's är ilaggda... och det är bara EN table över hela...

Grejen är att ha formateringen av tabellen från alla dom tre olika "rubrikerna" och samtidigt ha tre olika forms...

http://home.student.uu.se/p/pepe1407/temp/test1.html <- visar mer eller mindre hur slut resultatet kommer att se ut... så ignorera html'en i den....

munktellMedlem sedan sep. 200350 inlägg
#12

Så, finns det nått sätt att åstakomma samma resultat utan att bryta mot w3c standarden? med tre forms allstå...

jarvkloMedlem sedan juli 20013 295 inlägg
#13

Hmm...

Jag tycker det ser ut som om alla kolumner utom en skulle kunna ha en framräknad, fast, bredd om du klurar lite...

Om det är så, skulle du kunna splitta tabellen i tre och få önskat resultat.
För att slippa skriva width="..." på i princip varenda <td> i alla tre tabellerna kan du istället ställa in de fasta bredderna med <col>.
(lägg alltså en <col width="..."> per kolumn i tabellen före den första <tr>-taggen i varje tabell.)

Exempel: http://member.webforum.nu/2241/treformsientabell.html (view source ;) )

Och ja - <col> ingår i standard - tillochmed i xhtml 1.1 :e

munktellMedlem sedan sep. 200350 inlägg
#14

Grejen är att test2.php är bara ett skelett för att förklara hur test1.html skall se ut... så det kommer vara variabla bredder på samtliga fälten...

jarvkloMedlem sedan juli 20013 295 inlägg
#15

Hmm...

Det var test1.html jag menade - men jag illustrerade koden med test2.php ;)

Om du kan räkna fram en maxbredd på fältet med kategorin/orten så borde du sedan kunna ha fixerad bredd på resten av fälten (utom varubeskrivningen) utan större problem... Fast det är klart - jag ser ju inte hela ditt upplägg ;)

Annars är det nog LeonL:s förslag (en form om hela tabellen med flera submitknappar) som gäller för att kunna validera om du inte kan/vill splitta tabellen...

PepeJeriaMedlem sedan feb. 2003779 inlägg
#16

Tycker jarvkos lösning är bäst, att köra med olika tabeller.
Fördelar med detta är att ge varje tabell ett id och därefter applicera css på den för layouten.
Webbläsare läser även (har jag för mig, gällde NN4 i alla fall...) sidan snabbare om man kör flera istället för en enda stor med nestlade tabeller.

munktellMedlem sedan sep. 200350 inlägg
#17

Löste det med en table och en form utanför den.... och en massa extra kodande för att få allt att fungera... skär i hjärtat att bryta mot w3c standarden.. :) Synd dock att det ej går att dela upp en table på det viset som jag ville....

Tack för alla råden, och ursäkta att jag var lite oklar vad jag menade till en början...

Genererad på 386 ms · cache AV · v20260730165559-full.f96bc7eb