Avatar billede __ak Nybegynder
29. januar 2009 - 12:46 Der er 13 kommentarer

enter tast !submit form

hej alle

Jeg sidder og er ved at lave en sidde med en masse javascript, i den forbindelse har jeg en masse input felter i en form.

Det jeg gerne vil er at hvis brugeren trykker på enter, så skal der fyres en funktion af som jeg har defineret - men samtidig må den ikke submitte formen.

Jeg har forsøgt:
<input onkeyup="myFunk();return false;">
og
myFunk() {
//do my thing
return false;
}

Men i begge tilfælde submitter den formen.
Er der nogen der kan fortælle mig hvordan jeg sørger for den ikke bliver submitted?

//__ak
Avatar billede __ak Nybegynder
29. januar 2009 - 12:49 #1
jeg vil gerne gøre det samme med tabulator - altså sørge for den ikke flytter fokus til det næste element.
Avatar billede __ak Nybegynder
29. januar 2009 - 12:55 #2
jeg har nogle if sætninger i min funktion som skal køres før jeg kan lave return false.
Avatar billede olebole Juniormester
29. januar 2009 - 15:49 #3
<ole>

Skal formen overhovedet submittes - og i så fald, hvordan?

/mvh
</bole>
Avatar billede jokkejensen Novice
29. januar 2009 - 16:14 #4
.... Der findes massere af scripts til at submitte en form med enter, og det lader til du kender ! not tegnet :)

/J
Avatar billede __ak Nybegynder
29. januar 2009 - 16:18 #5
ole: Ja formen skal submittes via en type="submit" knap.
Kan det omgås ved at sætte noget onsubmit="return false" på formen, eller vil det også stoppe knappen?

jokke: jeg er ikke helt sikker på jeg forstår hvad du mener?
det jeg er ude efter er at forhindre at formen bliver submitted ved tryk på enter.
Avatar billede olebole Juniormester
29. januar 2009 - 16:39 #6
<form ............ onsubmit="return false">
<button onclick="this.form.submit()">Send</button>
</form>
Avatar billede olebole Juniormester
29. januar 2009 - 16:40 #7
- og jeg forstod heller ikke jokke - og det tror jeg såmænd heller ikke, jokke selv gjorde  =)
Avatar billede jokkejensen Novice
29. januar 2009 - 16:48 #8
Ja hvis man nu har et script der submitter formen med enter, er det vel ikke så skiiiide svært at modde det til IKKE at submitte formen.

beklager mit sprogvalg :)

/J
Avatar billede __ak Nybegynder
30. januar 2009 - 09:44 #9
jokke: Problemet er at Enter tasten som standard submitter en form - det er det jeg gerne vil undgå.
Det er altså ikke noget kode som jeg har lavet der får den til at gøre det.

ole: Så ser det ud til at jeg er kommet forbi enter tasten - har du nogen forslag til hvordan jeg kan deaktivere "tabulator-funktionen" også?
Avatar billede olebole Juniormester
30. januar 2009 - 12:26 #10
Hmmm ... det synes jeg umiddelbart, lyder som en skidt idé, men hvis du insisterer, så prøv:

document.onkeydown = function(e){
    e = e ? e : event;
    if (e.keyCode!=9) return;
    if (e.stopPropagation) e.stopPropagation();
    else e.cancelBubble = true;
    if (e.preventDefault) e.preventDefault();
    else e.returnValue = false;
}
Avatar billede __ak Nybegynder
03. februar 2009 - 11:25 #11
Mange tak for svarene, dog fik jeg det til at lykkes af en anden vej, ved at sætte:

onkeypress="return false"
sammen med
onkeyup="myFunk();"

det ser ud til at spille perfekt for mig.
Avatar billede __ak Nybegynder
06. februar 2009 - 12:34 #12
lægger du et svar ole?
Avatar billede olebole Juniormester
06. februar 2009 - 17:44 #13
Kommer her  =)
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