[Firefox] Formulier succesvol resetten bij reload?

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • evaarties
  • Registratie: April 2001
  • Laatst online: 19-09 17:53

evaarties

Powerball @ 12.582

Topicstarter
Firefox heeft de feature dat het waarden van een formulier vasthoud als de gebruiker een soft reload doet. Dit kan vervelende situaties opleveren als je bv. javascript hebt wat uitgaat van een initieel formulier.

Hoe kun je nu het beste het gedrag van de pagina met het formulieren aanpassen zodat Firefox het gedrag vertoond als bv Opera, Chrome en Internet Explorer?

Ik heb zelf een aantal mogelijke oplossingen:

- Formulier en/of elementen voorzien van de niet W3C standaard attribuut autocomplete. Dit is geen oplossing voor mij omdat ik aan de standaard wil voldoen.
- Met javascript bij onLoad een reset uitvoeren van het formulier. Ook niet echt een oplossing, het formulier moet ook kunnen werken zonder javascript.
- Cache headers toevoegen, dit schijnt niet altijd en/of niet in elke browser te werken.

Zijn er mooiere oplossingen die voldoen aan de W3C standaard (XHTML 1.1) en werken zonder javascript?

Acties:
  • 0 Henk 'm!

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 18-09 16:28

Bosmonster

*zucht*

evaarties schreef op dinsdag 07 juli 2009 @ 10:21:
Firefox heeft de feature dat het waarden van een formulier vasthoud als de gebruiker een soft reload doet. Dit kan vervelende situaties opleveren als je bv. javascript hebt wat uitgaat van een initieel formulier.

Hoe kun je nu het beste het gedrag van de pagina met het formulieren aanpassen zodat Firefox het gedrag vertoond als bv Opera, Chrome en Internet Explorer?

Ik heb zelf een aantal mogelijke oplossingen:

- Formulier en/of elementen voorzien van de niet W3C standaard attribuut autocomplete. Dit is geen oplossing voor mij omdat ik aan de standaard wil voldoen.
- Met javascript bij onLoad een reset uitvoeren van het formulier. Ook niet echt een oplossing, het formulier moet ook kunnen werken zonder javascript.
- Cache headers toevoegen, dit schijnt niet altijd en/of niet in elke browser te werken.

Zijn er mooiere oplossingen die voldoen aan de W3C standaard (XHTML 1.1) en werken zonder javascript?
:? Prima oplossing toch dan juist? Zonder javascript werkt de rest van je javascript toch ook niet, dus blijft gewoon het standaard gedrag beschikbaar.

Wat je natuurlijk ook nog kunt doen, is je javascript zo schrijven dat het niet uitgaat van een initieel formulier, maar iets flexibeler is opgezet ;) Kleine moeite toch om de formuliervelden even te doorlopen en de actie te nemen die nodig is?

[ Voor 9% gewijzigd door Bosmonster op 07-07-2009 10:30 ]


Acties:
  • 0 Henk 'm!

  • --MeAngry--
  • Registratie: September 2002
  • Laatst online: 19-09 16:35

--MeAngry--

aka Qonstrukt

Precies wat Bosmonster zegt, nooit uitgaan van initiele waardes. Wie weet wat voor extensie een gebruiker geïnstalleerd heeft die van alles automatisch invult om de normale flow heen. Voer je acties altijd pas uit na een goede controle van wat er in je veld staat, dan kan het ook (vrijwel) nooit fout gaan en is de kans op bugs meestal een stuk kleiner. :)

Tesla Model Y RWD (2024)


Acties:
  • 0 Henk 'm!

  • evaarties
  • Registratie: April 2001
  • Laatst online: 19-09 17:53

evaarties

Powerball @ 12.582

Topicstarter
Wat betreft tekstvelden kan ik er nog enigszins mee leven dat die automatisch gevuld worden, maar Firefox zet ook keuzelijsten op een eerder gekozen waarde. Helemaal vervelend is dit als er in de bron een andere waarde geselecteerd staat met "selected=selected".

Uiteraard is een goede controle (serverside) altijd belangrijk.

Acties:
  • 0 Henk 'm!

  • _Thanatos_
  • Registratie: Januari 2001
  • Laatst online: 05-09 14:39

_Thanatos_

Ja, en kaal

Ik zou het javascript zo aanpassen dat het kan omgaan met een ingevuld formulier. Als je bepaalde onchanges enzo hebt, die dan uitvoeren wanneer er iets anders dan niks geselecteerd is tijdens het laden.

Ik zou zeker niet het standaardgedrag van een browser geforceerd gaan veranderen. Dat kan alleen maar frustraties bij de gebruiker opwekken. Bijvoorbeeld, als je op een link klikt en de back-knop gebruikt om terug te komen, alleen maar om erachter te komen dat al je input weggeflikkerd wordt (nee, het gaat niet alleen om reloaden in Firefox dus).

日本!🎌