JS Form Saver
// NOTE: Omdat ik de .js niet geupload krijg heb ik hem hernoemt naar een .txt
Soms zijn formulieren nogal irritant. Je verzend een formulier maar omdat er iets mis gaat (verbindings problemen bijvoorbeeld), eindig je terug bij het formulier, alleen is deze nu leeg. Kan je weer lekker opnieuw beginnen... zucht. Dit komt niet zo heel vaak voor maar er kan natuurlijk van alles mis gaan. Daarom heb ik deze javascript classe geschreven.
Het doel van dit script is om een formulier op te slaan in de localStorage. Zodat als je de pagina refreshed, de gegevens opgeslagen blijven en weer keurig worden teruggezet zodat je niks kwijt bent.
Er kan gekozen worden tussen sessionStorage en localStorage. Ik kan me voorstellen dat het niet wenselijk is dat een gebruiker een formulier gedeeltelijk invuld, de site verlaat, paar dagen later terugkomt en het erg vreemd vind dat het formulier al half is ingevuld. Door sessionStorage te gebruiken kan dit voorkomen worden.
Ook ZAT er een hele simpele validatie functie op. Dit was meer bedoeld als een dummy functie.
Deze functie controleerde niks anders dan of alles was ingevuld. Omdat dit zo beperkt is en niks te maken heeft met het formulier op te slaan. Heb ik hem verwijderd.
Er is ook een simpele check functie aanwezig. Deze controleert of localStorage wel ondersteund word zodat je eventueel een alternatief kan gebruiken. Op dit moment word localStorage door alle moderne browsers ondersteund (zelfs IE8)
Mocht het niet duidelijk zijn, het werkelijk opslaan van de gegevens in bv een database oid moet je nog steeds zelf doen.
Dit script ondersteund bijna alle input velden (geen file) en ook select en textarea.
Het is makkelijk om div's en andere elementen toe te voegen. Dit zou wensenlijk kunnen zijn gezien de 'editable' attribuut van html5. Dit lijkt mij echter zo uitzonderlijk dat ze niet standaard ondersteund worden.
Gesponsorde koppelingen
PHP script bestanden
Er zijn 6 reacties op 'Js form saver'
Om te reageren heb je een account nodig en je moet ingelogd zijn.
PHP hulp
0 seconden vanaf nu