Kom ihåg mig?
Home Menu

Menu


Ingen "action" i formulär - browserproblem?

Ämnesverktyg Visningsalternativ
Oläst 2008-09-10, 16:23 #1
Undoredoos avatar
Undoredoo Undoredoo är inte uppkopplad
Medlem
 
Reg.datum: May 2008
Inlägg: 179
Undoredoo Undoredoo är inte uppkopplad
Medlem
Undoredoos avatar
 
Reg.datum: May 2008
Inlägg: 179
Blir inte klok på en sak. Jag sitter och trixar med formulär i ett system som bygger på Java beans -> jsp -> html (*döh*). Formuläret i fråga fungerar inte i alla lägen. Kruxet är att det inte har någon action, dvs JSP-filen anropar sig själv vid submit. Detta funkar fint i IE, FF och Opera, men inte i Safari eller Chrome.

Servern ger felmeddelande som tyder på att Safari och Chrome försöker submitta till den katalog som JSP-filen ligger i, vilket ju självfallet blir fel.

Har prövat att ange den aktuella JSP-filen i action, men då blir servern ledsen, oavsett browser. Men där är det troligtvis någonting med Java, JSP och servlets som jag inte hajar, och inte mina fellow Java-kollegor heller.

Om vi bortser från eventuella Javarelaterade problem, är det någon som känner igen problemet?

Ledsen för bristfälligt underlag vad gäller kod...
Undoredoo är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-09-10, 16:48 #2
hnn hnn är inte uppkopplad
Banned
 
Reg.datum: Mar 2004
Inlägg: 2 587
hnn hnn är inte uppkopplad
Banned
 
Reg.datum: Mar 2004
Inlägg: 2 587
Min erfarenhet är att WebKit inte stödjer det som är solklart i FF, IE eller Opera.

Kan du inte hitta något som motsvarar _SERVER['SCRIPT_NAME'] i PHP tex?
hnn är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-09-10, 20:20 #3
dAEks avatar
dAEk dAEk är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Dec 2006
Inlägg: 678
dAEk dAEk är inte uppkopplad
Mycket flitig postare
dAEks avatar
 
Reg.datum: Dec 2006
Inlägg: 678
Jag vet inte om det är så smart att hoppa över action-attributet eftersom det inte är bestämt hur webbläsare ska hantera det när det inte finns med. Fast det brukar funka ändå - brukar.
Jag har satt upp ett simpelt test men jag kan inte få det att funka som du beskriver. Kanske gör ni något galet på serversidan, trots allt? Varför annars skulle det blir knas om ni faktiskt anger action och method för formuläret? Vad klagar servern på då?

F.ö. borde action peka på en servlet istället för en JSP-sida.
dAEk är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-09-11, 09:35 #4
Roberts avatar
Robert Robert är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Jan 2004
Inlägg: 2 103
Robert Robert är inte uppkopplad
Klarade millennium-buggen
Roberts avatar
 
Reg.datum: Jan 2004
Inlägg: 2 103
Hmmm, dAEK, jag läste relativt nyligen att action-parametern inte är obligatorisk (därvid borde alla webläsare klara av att den inte finns), men tyvär har jag glömt var jag läste det. Det borde stå i html-standarden iaf, så det är väl bara att läsa...
Robert är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-09-11, 10:19 #5
Undoredoos avatar
Undoredoo Undoredoo är inte uppkopplad
Medlem
 
Reg.datum: May 2008
Inlägg: 179
Undoredoo Undoredoo är inte uppkopplad
Medlem
Undoredoos avatar
 
Reg.datum: May 2008
Inlägg: 179
Helt riktigt, att hoppa över action är ingen bra lösning. Därför kommer jag att ändra på det. Systemet har några år på nacken (utan någon riktig GUI-utvecklare inblandad) och fungerar bara i IE, så mitt jobb just nu är att anpassa för fler webbläsare.

Men jag upptäckte varför det inte funkade och det berodde just på skillnaden i hur ett tomt action-attribut hanteras.

Sidan i fråga hade redan postade variabler i URL:en. Alltså, helt enkelt:

Kod:
http://www.domän.se/servlet/servletnamn?foo=bar
I IE, FF och Opera skickas dessa variabler, plus ny formulärdata, vid submit med tom action. Till saken hör att Javabönan i fråga behöver ha alla dessa variabler för att hantera själva händelsen korrekt. Därför räckte det inte med att ange servleten i action, eftersom de tidigare variablerna inte hänger med då.

Så lösningen blev alltså att ange servleten som action-attribut och lägga till hidden-fält med de tidigare variablerna. Servern klagar inte och Chrome och Safari är jätteglada.

Tack för bra input.
Undoredoo är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-09-11, 10:34 #6
Undoredoos avatar
Undoredoo Undoredoo är inte uppkopplad
Medlem
 
Reg.datum: May 2008
Inlägg: 179
Undoredoo Undoredoo är inte uppkopplad
Medlem
Undoredoos avatar
 
Reg.datum: May 2008
Inlägg: 179
Citat:
Originally posted by Robert@Sep 11 2008, 09:35
Hmmm, dAEK, jag läste relativt nyligen att action-parametern inte är obligatorisk (därvid borde alla webläsare klara av att den inte finns), men tyvär har jag glömt var jag läste det. Det borde stå i html-standarden iaf, så det är väl bara att läsa...
Hm, fast uppenbarligen var det skillnad. Kan det inte vara så att inställningar på serversidan kan påverka?

Jag kan tillägga att i mitt fall stämmer inte base-href överens med sidans verkliga adress (en Javarelaterad variant antar jag). Men det påverkar säkerligen också hur en tom action hanteras. Tyvärr kan jag inte ändra base-href-attributet för då havererar det fullkomligt.
Undoredoo är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-09-11, 13:27 #7
dAEks avatar
dAEk dAEk är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Dec 2006
Inlägg: 678
dAEk dAEk är inte uppkopplad
Mycket flitig postare
dAEks avatar
 
Reg.datum: Dec 2006
Inlägg: 678
Citat:
Originally posted by Robert@Sep 11 2008, 09:35
Hmmm, dAEK, jag läste relativt nyligen att action-parametern inte är obligatorisk (därvid borde alla webläsare klara av att den inte finns), men tyvär har jag glömt var jag läste det. Det borde stå i html-standarden iaf, så det är väl bara att läsa...
Action är "required" i HTML 4 fast i praktiken behöver det inte innebära att ens grejer inte kommer funka om man utelämnar det. De flesta webbläsare faller ofta - men inte alltid - tillbaka på samma alternativ. Fast skulle det dyka upp en populär och lite mer strikt webbläsare skulle det kunna paja. Vill man vara på den säkra sidan följer man W3:s rekommendationer.
dAEk är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 02:23.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017