08. december 2004 - 21:21Der er
16 kommentarer og 2 løsninger
validering af form
jeg bruger flg kode til at kontrollere om alle felter i en form er udfyldt. Problemet er at hvis et felt mangler at blive udfyldt, forsvinder alt det indtastede i de andre felter når den returnere, hvordan kan man undgå dette?
function submitForm() {
if (document.form1.overskrift.value=="") { alert("Du skal indtaste en overskrift") document.form1.overskrift.focus() return false; }
if (document.form1.nyhed.value=="") { alert("Du skal indtaste en nyhed") document.form1.nyhed.focus() return false; }
hmm nu sker der pludselig ikke noget når jeg trykker på opret knappen, og formualeren er udfyldt korrekt...kan ikke lige se hvad jeg har kommer til at ændre det må vel være noget med en af flg lininer eller hvad?
Siden du bruger < /> på ikke "åbne/lukke" tage, formoder jeg du validerer med XHTML, derfor skal onClick være onclick (ikke camelcase)... Med denne version skulle det virke fint (Fjern submit fra funktionen. Den returnerer boolean true hvis det hele er ok og så vil formen validere og submitte...
hmm ja men hvis jeg sætter action i formen får jeg et andet problem, da der er flere submit knapper. derfor bruger jeg på hver submit knap "this.form.action"
Ok, men hvis een knap er en type="submit" og de ander er type="button" vil submit-fætteren blive udløst f.eks ved tryk på return... Derfor bliver du nok nødt til at lave de forskellige knapper til type="button" og definere specifikt hvad der skal ske onclick.
F.eks. onclick="document.form1.method='add'; if(submitForm()) document.form1.submit();"
Men method er nok under alle omstændigheder et "dårligt ord, da method er "post" eller "get"... skift evt. til funktion=add eller noget lign.
hmm det virker fint når der står en url i action i form tag'et, men så snart websiden som formularen er på indeholder en QueryString ex. admin-nyheder.asp?id=47 får jeg flg fejl når jeg trykker på knappen til formularen:
"Error: Object doesn't support this property or mthod"
og den referer til denne linje: document.form1.submit()
roenving> felternes værdi forsvinder ikke...jeg kan heller ik lige få dit eksempel til at virke
formen er på en ASP side, og den bruges til enten at redigere eller oprette en ny nyhed. Hvis det er en ny nyhed ser sidens url sådan ud: admin-nyheder.asp ...det virker fint nok hvis det er en nyhed der skal redigeres ser siden url sådan ud: admin-nyheder.asp?id=etTal ....og det er her jeg får fejlen når jeg vil submitte formen bliver submittet med knappen: <input name="Button" type="button" value="Opret" onclick="if(submitForm()) document.form1.submit();" /> url'en ligger i action i form tag'et
kan jeg sætte en action med url'en ind på submit-knappen? det er jo to forskellige url'er der skal sendes til afhæning af om det er en opdatering eller en ny nyhed
ja det har jeg os' men kan jeg så bare sætte this.form.action='URL'; ind på submit knappen også slette f.action='update2.asp?method=Add'; fra funktionen eller hvordan....fatter ik så meget af det der js desværre
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.