Slettet bruger
28. juni 2010 - 19:43
Der er
13 kommentarer og 1 løsning
Form med 2 submitbuttons - hvilken knap submitter med ENTER
Jeg har en form (forenklet): <form> <input size="45" type="text" name="felt1" value=""> <input size="45" type="text" name="felt2" value=""> <input size="45" type="text" name="felt3" value=""> <input size="45" type="text" name="felt4" value=""> <input type="submit" name="knap1" value="Knap1"> <input type="submit" name="knap2" value="Knap2"> </form> Hvis jeg står i et af input-felterne og trykker enter, vil jeg gerne bestemme hvilken knap der submitter. Hvordan gør jeg det? Det er ikke en option at disable enter, idet brugeren skal have mulighed for at bruge enter i felterne.
Annonceindlæg fra Computerworld
så afhængigt af i hvilket felt man står skal det være den ene eller anden submit knap der bruges? må man spørge hvorfor? kunne være der fandtes en anden løsning :)
Slettet bruger
29. juni 2010 - 07:38
#2
Det er samme submitknap der skal bruges, uanset hvilket felt man står i. Grunden til der er flere submit-knapper, er at man både kan bladre frem og tilbage og submitte i formen. Dette er opbygget således af kodningsmæssige årsager.
kan du ikke nøjes med at lave den ene som submit-knap og den anden som en button, hvor onclick sættes til at submitte formen?
Slettet bruger
29. juni 2010 - 21:44
#4
Jeg har prøvet med onclick="submit()", hvilket fungerer når der trykkes ENTER. Når jeg trykke på selve knappen virker den ikke som den skal. Mit script fanger kun submitknappen er trykket og ikke min button.
prøv med:
onclick="this.form.submit()"
Slettet bruger
30. juni 2010 - 07:44
#6
Samme problem.
er din button inde i formen? altså inden for <form> og </form>?
Slettet bruger
30. juni 2010 - 10:05
#8
Ja, det er den. Her er min originale opbygning af formen, renset for unødvendig formattering: <form name="log" action="log.php" method="post"> <table> <tr> <td>Side <input type="submit" name="page_back" value="<" DISABLED> <input size="2" type="text" name="page" value="1"> <input type="submit" name="page_forward" value=">"> ud af 7 side(r)</td> <td><input type="submit" name="reset_filter" value="Nulstil filter"><input type="submit" name="search" value="Søg"></td> </tr> </table> <table border="1" cellpadding="3" cellspacing="0"> <tr> <th>Type</th> <th>Indhold</th> <th>Navn</th> <th>Id</th> </tr> <tr> <td><select name="type"><option selected value="none"> </option><option value="LOGIN">LOGIN</option></select></td> <td><input size="45" type="text" name="log_data" value=""></td> <td><select name="user_name"><option selected value="none"> </option><option value="id0">Admin</option><option value="id2">User</option></select></td> <td><select name="admin_id"><option selected value="none"> </option><option value="id0">0</option><option value="id2">2</option></select></td> </tr> <tr> <td>LOGIN</th> <td>User successful logged in.</th> <td>Admin</th> <td>0</th> </tr> <tr> <td>LOGIN</th> <td>Login failed. Wrong username or password.</th> <td>Admin</th> <td>n/a</th> </tr> <tr> <td>LOGIN</th> <td>Login failed. Wrong username or password.</th> <td>Admin</th> <td>n/a</th> </tr> </table> </form> Det vil være meget bøvlet for mig at flytte knapperne udenfor formen, idet min bagvedliggende opbygning af filtreringsfunktionen vil skulle laves om. PS: Hvordan får du din kode i en boks?
Slettet bruger
30. juni 2010 - 12:35
#10
Nej, det er jeg godt klar over. Det er heller ikke det der er problemet. Man skal selvfølgelig ikke kunne bladre tilbage når man er på side 1. Problemet er at den første aktive submit-knap bliver valgt når man ændrer sidetallet og trykket på ENTER.
30. juni 2010 - 18:05
#11
ja, det var derfor du skulle bruge onclick på de submit knapper der IKKE skulle aktiveres ved ENTER
Slettet bruger
30. juni 2010 - 20:52
#12
Det prøvede jeg også. Ved ENTER virkede det som det skulle. Ved tryk på frem- eller tilbageknappen kunne jeg ikke tracke hvilken knap der var blevet trykket på. Anyway, efter et have læst oceaner af websider omkring lige netop denne problemstilling, samt de forskellige browsers opførsel ved tryk på ENTER, har jeg bidt i det sure æble og ændret i min opbygning, således at den knap der skal submitte ved ENTER er først i min form. splazz...> Du får alle (wauv 15 point) for deltagelse i tråden.
30. juni 2010 - 20:59
#13
okay, bare i orden...
30. juni 2010 - 21:12
#14
tfp :)
Vi tilbyder markedets bedste kurser inden for webudvikling