Avatar billede jbl Nybegynder
01. november 1999 - 15:22 Der er 7 kommentarer og
1 løsning

Submit trigger via onunload/onbeforeunload event?

Jeg har et script hvor jeg ønsker at lave en auto-submit, dvs. ingen submit-knap på siden, men der skal submittes når man forlader formen/siden. Jeg har forsøgt dette ved at catche en event på ovenstående events, men problemet, er at efter en manuel submit i et script f.x.
forms("myform").submit()
så kaldes min kode rekursivt igen, så den bliver ved med at kalde submit.
Det ser dog ud til at der faktisk aldrig laves en egentlig submit, dvs. action-scriptet kaldes ikke, blot kaldes koden igen og igen. Koden ligner ala dette:

<SCRIPT language="JScript">
  function save()
  {
    .
    .

    forms("myform").submit();
    .
    .
  }
</SCRIPT>

<BODY onbeforeunload="save()" ...>
.
.
</BODY>

Hvordan laves dette? KONKRET (og som bi-bemærkning, hvorfor kaldes min script-kode rekursivt?)
Avatar billede pingo Nybegynder
01. november 1999 - 15:27 #1
Forventer du selv at få svar på 0 point?
Avatar billede skjoldby Nybegynder
01. november 1999 - 15:34 #2
Kan der være fordi du bruger den forkerte syntax:

document.myform.submit();

skjoldet

PS pingo har ret, hvad med lidt point???
Avatar billede skjoldby Nybegynder
01. november 1999 - 15:39 #3
onbeforeunload, er det ikke kun et IE5 tag???
Avatar billede jbl Nybegynder
01. november 1999 - 18:29 #4
Ups, glemte at sætte point på!
100 points til den hurtige!
Avatar billede skjoldby Nybegynder
01. november 1999 - 19:28 #5
øhh. kan du bruge noget af det???
Avatar billede jbl Nybegynder
01. november 1999 - 21:15 #6
Synkaksen jeg bruger er ok, så der må være noget teknisk omkring event-triggeren der gør at min kode kaldes rekursivt? Har noget faktisk prøvet at submitte FØR en unload?
Avatar billede skjoldby Nybegynder
01. november 1999 - 21:18 #7
Hvad mener du med sidste spm?
Avatar billede jakoba Nybegynder
11. februar 2001 - 15:29 #8
Jeg vil tro du skal omdirigere din form med en target der peger på en ramme der IKKE afficeres af den load der prøver at trigge onBeforesubmit.

Pt har du en race i den ramme med formen.

nyside til location  ->  trigger submit event
submitevent lægger target i location  ->  aborterer load af ny side
abort af ny sideload  ->  abort af submit
abort af submit  ->  nyside til location          (overlappende timeouts?)
...

allenfals, med
<form  ...  target=\"en_anden_ramme\">
vil jeg tro du kan gøre det.

mvh JakobA
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester