Avatar billede jonas_j Nybegynder
13. juli 2005 - 11:25 Der er 22 kommentarer og
1 løsning

Når jeg trykker på "Enter", submitter den ikke min form?

Hej Gutter,

Jeg har lige et problem med en submit.form jeg gerne vil have løst.

Når jeg trykker på enter i min textbox, submitter den ikke min form, hvorimod når jeg bruger min submit knap er der ingen problemer. Jeg har prøvet med følgende:

<input type="text" name="ordre" value="" onkeypress="if (event.keyCode == 13) { return true ; }">

Men kan man gøre det med en onfocus på textfeltet istedet?

Mvh
Jonas Jensen
Avatar billede kdjweb Nybegynder
13. juli 2005 - 13:45 #1
du har husket at lukke med </form> ?

hvad har onfocus med php at gøre?
Avatar billede jonas_j Nybegynder
13. juli 2005 - 14:13 #2
Ja jeg har lukket formen korrekt :)

Det jeg vil med onfocus er at sætte focus på knappen submit, kan man ikke det? så at når man trykker på "Enter" vælger den, den submit jeg har focus på og ikke en anden!
Avatar billede xyborx Nybegynder
13. juli 2005 - 14:15 #3
Hvorfor bruger du ikke bare <input type="submit" value="En knap" /> i stedet for? Det er da en del nemmere.
Avatar billede xyborx Nybegynder
13. juli 2005 - 14:20 #4
Ah.. Det tog lige lidt tid for mig at forstå spørgsmålet rigtigt :)

Men jeg kan nu ikke se ideen i at enter skal hoppe til submit knappen. Det er jo det man har tab knappen til.

Eller har jeg igen misforstået noget? :)
Avatar billede busschou Praktikant
13. juli 2005 - 14:21 #5
Det plejer (i al fald i mine forms) at være sådan at hvis man på en login side fx taster brugernavn og kode, så submitter den ved tryk på enter.
Altså at man ikke behøves at rette musen på submit knappen
Er jeg bare heldig at mine forms altid virker sådna?
Avatar billede busschou Praktikant
13. juli 2005 - 14:24 #6
hvordan ser din kode ud? der er ikke smuttet et og andet dumt lille tag tegn eller noget
Avatar billede jonas_j Nybegynder
13. juli 2005 - 14:28 #7
Her er min form:

start_form("phpmain", $_SERVER[PHP_SELF], "POST", "søg_prod");
start_table();
print table_row(
  table_header_cell( 'Søg ordre' )
);
print table_row(   
  table_cell( '<input type="text" name="ordre" value="" onkeypress="if (event.keyCode == 13) { return true; }">')
                );
end_table();
print '<INPUT TYPE="submit" name="prodover" VALUE="Find">';
end_form();

Table funktionerne er almindelig tables og det er ikke dem den fucker op i, det er testet :)
Avatar billede jonas_j Nybegynder
13. juli 2005 - 14:31 #8
nemlig busschou :) jeg vil gerne have sådan, at når jeg trykker enter, at den så submitter!!
Avatar billede busschou Praktikant
13. juli 2005 - 14:31 #9
har du ikke mulighed for at lave en "vis kilde" på formen i stedet?
Avatar billede jonas_j Nybegynder
13. juli 2005 - 14:34 #10
K.. 2 sek.

Her:

<form enctype="multipart/form-data" target="phpmain" action="/compotech.net/Intranet/Ordre/delete_prodover.php" method="POST" name="søg_prod"><table width=100% border=0 cellspacing=2 cellpadding=0>
<tr align="left" > <th > Søg ordre</th>
</tr>
<tr align="left" > <td > <input type="text" name="ordre" value="" onkeypress="if (event.keyCode == 13) { return true; }"></td>
</tr>
</table>
<INPUT TYPE="submit" name="prodover" VALUE="Find">
</form>
Avatar billede busschou Praktikant
13. juli 2005 - 14:37 #11
tjo den ser jo god nok ud... underligt
Nå men du kan vel løse det ved at lave dit javascript lidt om .. om ikke andet :o)
prøv rette
--
onkeypress="if (event.keyCode == 13) { return true;}"
--
til
--
onkeypress="if (event.keyCode == 13) {this.form.submit();}"
Avatar billede busschou Praktikant
13. juli 2005 - 14:37 #12
det er muligt det skal være onkeydown/up i stedet for at virke ordentlig
Avatar billede jonas_j Nybegynder
13. juli 2005 - 14:41 #13
har prøvet tihs.form.submit(); sry.. ingen result og heller ikke ved onkeydown/up?

Det er noget mystic noget. Men jeg har jo også en form() længere nede på siden! kan det være, at når man trykker enter den kun reagere på den sidst form() i koden?
Avatar billede busschou Praktikant
13. juli 2005 - 14:43 #14
hmm det er muligt, men så burde du jo se at den submittede den form i stedet?
Det er også muligt at evet.keyCode kun er IE...jeg er ikke så meget haj til javascript. Men ved dog at this.form.submit _vil_ referere til den aktuelle form!
Avatar billede jonas_j Nybegynder
13. juli 2005 - 14:49 #15
nej evet.keyCode dur når jeg bruger false i den, har nemlig brugt det er sted, hvor brugerne ikke må strykke enter :) og det virker fint :)
Avatar billede busschou Praktikant
13. juli 2005 - 14:51 #16
ok men så er det da for alvor underligt at det ikke også dur der
Jeg er nok desværre løbet tør for ideer så

Men da det ikke nødvendigvis er et php spørgsmål kan du jo overveje flytte det til dhtml eller javascript kategorien hvis alt andet fejler :O)
Avatar billede jonas_j Nybegynder
13. juli 2005 - 15:02 #17
oki.. tak for hjælpen
Avatar billede olebole Juniormester
14. juli 2005 - 14:42 #18
<ole>

Et frisk gæt: Du har i den anden form en submitknap med navnet 'submit'. Samtidig får du en JavaScript-fejl, du ikke fortæller om ... for du har da vel sat din browser til at melde alle JS-fejl(?)  :)

/mvh
</bole>
Avatar billede jonas_j Nybegynder
26. juli 2005 - 08:55 #19
Nej jeg får ingen JS-fejl... Og jeg tror ikke det er java der fucker det op. Tror simpelthen at det er php, som ikke kan håntere at jeg har 2 forms på siden!!
Avatar billede Slettet bruger
26. juli 2005 - 08:59 #20
Det kan aldrig være php der er problemet.. php har intet med dit html-problem at gøre!
Avatar billede Slettet bruger
26. juli 2005 - 08:59 #21
Derimod må jeg indrømme, at jeg tror olebole har fat i noget rigtigt - jeg har i hvert fald haft samme problem, og løst det vha oleboles forslag.
Avatar billede jonas_j Nybegynder
26. juli 2005 - 09:03 #22
hmm... det er bare mystisk, at jeg benytter sammen JS-script på en anden side og der har jeg ingen problemer, men lige nøjagtigt på denne side har jeg problemet! Det er frustrerende? Tror jeg dropper spørgsmålet her og flytter det til javascript, som tidligere foreslået...

To be continuet in the javascript-forum :)
Avatar billede busschou Praktikant
26. juli 2005 - 09:03 #23
har du et link?
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

IT-JOB

KMD A/S

Projektleder

Riskpoint A/S (Riskpoint Solutions Limited)

Senior Developer

Forsvarets Efterretningstjeneste

Linux Infrastructure Specialist