Avatar billede madssch Nybegynder
12. maj 2003 - 09:59 Der er 17 kommentarer og
1 løsning

Stop dokument..?

Jeg har et stykke JavaScript som gør, at en bruger skal bekræfte en handling. Scriptet ser sådan ud:

<script>
function bekraeft() {

var truthBeTold = window.confirm("Er du sikker på, at du ønsker at bla bla bla...");

if (truthBeTold) {
    document.retinterval.submit();   
    }
else
    location.stop(); //???????????????
}
</script>

Problem: Hvis brugeren vælger ja, bliver formularen submitted - fint nok. Hvis brugeren vælger nej, skal dokumentet "fryse" - altså formularen skal ikke submittes.

Kan man det i JavaScript?

Jeg ved, at det i ASP hedder Response.End - men hvad hedder det i JavaScript?

På forhånd tak!
Avatar billede erikjacobsen Ekspert
12. maj 2003 - 10:01 #1
Hvad mener du med "fryse"?
Kan du ikke nøjes med
i
f (truthBeTold) {
    document.retinterval.submit();   
  }
Avatar billede madssch Nybegynder
12. maj 2003 - 10:04 #2
Det tror jeg ikke. Idet brugeren har sagt ja, bliver han sendt til en ny side som håndterer alle ændringer lavet i formularen (scriptet bliver kaldt onSubmit)...
Avatar billede madssch Nybegynder
12. maj 2003 - 10:12 #3
Ville en løsning evt. være, at jeg i else-sætningen smed en variabel, som jeg så spurgte efter i mit opdaterings-script?

Hvis den (variablen) havde en værdi, skulle den så ikke opdatere...???
Avatar billede erikjacobsen Ekspert
12. maj 2003 - 10:12 #4
Men hvis han siger nej, hvad sker der så? Forøvrigt når du siger onsubmit så
skal du også gøre det rigtigt. Hvad skriver du nu?
Avatar billede erikjacobsen Ekspert
12. maj 2003 - 10:18 #5
Mit gæt er at du mener:

function bekraeft() {
  var truthBeTold = window.confirm("Er du sikker på, at du ønsker at bla bla bla...");
  return truthBeTold;
}

og så

<form ... onsubmit="return bekraeft()">
Avatar billede madssch Nybegynder
12. maj 2003 - 10:18 #6
Hvad jeg skriver nu?
Avatar billede madssch Nybegynder
12. maj 2003 - 10:20 #7
Tror vi snakker forbi hinanden.

Hvis der vælges ja i confirm'en, skal formularen opdateres. Vælges nej, skal den ikke. Det er her jeg skal ha' dokumentet "froset". Ellers opdaterer den alligevel...
Avatar billede erikjacobsen Ekspert
12. maj 2003 - 10:25 #8
Virker mit sidst forslag ikke?
Avatar billede bearhugx Nybegynder
12. maj 2003 - 10:26 #9
hvis scriptet bliver kaldt ved eventen onSubmit, så kan du forhindre/stoppe en submit ved at returnere false

derfor (som jeg lige har opdaget) er erik's bud det rigtige, hvis confirm altså returnerer en boolsk værdi...
Avatar billede madssch Nybegynder
12. maj 2003 - 10:26 #10
Hmmm... Forstår ikke rigtig hvad det skulle gøre? Kan du forklare..?
Avatar billede erikjacobsen Ekspert
12. maj 2003 - 10:27 #11
Kan du forklare bedre hvad du mener med "frosset" ?
Avatar billede madssch Nybegynder
12. maj 2003 - 10:29 #12
Behøves vist ikke - dit forslag virkede!

Kan du (bare ren nysgerrighed) forklare hvad du gør? Jeg kan ikke helt gennemskue det...

(Er ikke så rutineret i JScript...)
Avatar billede roenving Novice
12. maj 2003 - 10:42 #13
Simpelt nok --

onsubmit er der for at du kan gøre noget _før_ submit -- herunder finde ud af at det ikke er godt nok, så man kan stoppe submitten ved at returnere false til onsubmit ;-)
Avatar billede madssch Nybegynder
12. maj 2003 - 10:45 #14
Lyder jo meget simpelt!  :D

I tilfælde af, at jeg vil ha' brugeren til at godkende 2 gange inden submit - hvad gør jeg så? Koden:

function bekraeft() {
  var truthBeTold = window.confirm("Er du sikker på, at du ønsker at bla bla bla...");
  return truthBeTold;
}
Avatar billede erikjacobsen Ekspert
12. maj 2003 - 10:54 #15
Utestet:



function bekraeft() {
  var truthBeTold = window.confirm("Er du sikker på, at du ønsker at bla bla bla...");
  if (truthBeTold) {
    return window.confirm("Er du HELT HELT sikker på, at du ønsker at bla bla...");
  }
  return false;
}
Avatar billede erikjacobsen Ekspert
12. maj 2003 - 10:55 #16
Når det så virker, så skylder jeg dig at fortælle at det er
"farligt" - har brugeren slået JavaScript fra får han ingen
advarsel - den bliver bare submitted.
Avatar billede madssch Nybegynder
12. maj 2003 - 10:58 #17
Det virker da..!  :D

Tusind tak for hjælpen!

Du må hellere submitte et svar, så du kan få dine velfortjente points!  ;-)
Avatar billede erikjacobsen Ekspert
12. maj 2003 - 11:00 #18
ok da
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