NorskFirefox Skrevet 22. desember 2007 Skrevet 22. desember 2007 Hei Vanskelig å finne en passende tittel, men spørsmålet er; hvordan kan jeg få enter til å aktivere en type="button" framfor type="submit" i en form, og at dette kun skal skje om man skriver i et felt med id="tag". vanskelig forklart? Noen som kan komme med en fremgangsmåte/funksjon jeg kan bruke? Finnes også her
luxus Skrevet 23. desember 2007 Skrevet 23. desember 2007 (endret) Okæi, her kommer min kode som jeg skrev ned nå på morgenkvisten :-) Den er ikke akkurat testet og den bærer preg av å være skrevet litt "fort og gæli" etter min mening Normalt når jeg skriver JS bruker jeg ikke så ofte å tilordne event-funksjoner rett på DOM-elementet slik som her (Les: aldri, når det er jeg som skriver JS koden fra starten av). Jeg bruker heller addEventListener / attachEvent på containerelementet, f.eks. form'en, eller evt. enda "høyere" opp. inputElement.onkeypress = function(e) { e = e || window.event; keyCode = e.which === undefined ? e.keyCode : e.which; if ( keyCode === 13 ) { // Enter er trykket inn document.getElementById("buttonElementetDitt").onclick(); // "Fyrer av" on-click // Litt usikker på om return false; vil holde her, i så fall må dette også kjøres: // preventDefault(e); // Stopper standard browser action // stopPropagation(e); // Stopper event bobling return false; } }; // Det er ikke sikker du trenger disse funksjonene: var stopPropagation = function(e) { e.cancelBubble = true; // IE if ( e.stopPropagation ) { // w3c e.stopPropagation(); } }; var preventDefault = function(e) { e.returnValue = false; // IE if ( e.preventDefault ) { // w3c e.preventDefault(); } }; Endret 23. desember 2007 av luxus
NorskFirefox Skrevet 23. desember 2007 Forfatter Skrevet 23. desember 2007 Ok, og hvordan setter jeg den da på inputfeltet? (Kan så og si 0 i javascript )
luxus Skrevet 23. desember 2007 Skrevet 23. desember 2007 hehe, det står jo forsåvidt i koden jeg skrev :-) inputElement.onkeypress .. der inputElement altså er referanse til input elementet ditt som ligger i form'en) Dette kan du hente ut via document.getElementById() f.eks. Med andre ord: HTML kode: <input id="dittInputElement" type="text" value="" /> JS kode for å "få tak i" elementet: var inputElement = document.getElementById("dittInputElement");
NorskFirefox Skrevet 23. desember 2007 Forfatter Skrevet 23. desember 2007 (endret) Ok, prøver nå var inputElement = document.getElementById("tag1"); inputElement.onkeypress = function(e) { e = e || window.event; alert(e); keyCode = e.which === undefined ? e.keyCode : e.which; if ( keyCode === 13 ) { // Enter er trykket inn document.getElementById("tag_ad").onclick(); // "Fyrer av" on-click // Litt usikker på om return false; vil holde her, i så fall må dette også kjøres: // preventDefault(e); // Stopper standard browser action // stopPropagation(e); // Stopper event bobling return false; } }; for å teste hvordan det funker. Men får det ikke til å funke. HTML-koden jeg bruker: <form action="" method="post" enctype="multipart/form-data"> <input name="tag1" type="text" class="txt" id="tag1" style="float:none; width:210px; margin-top:3px;"> <input type="button" name="tag_ad" id="tag_ad" value="Legg til tag" class="btn" style="width:212px;" onClick="addEvent()"> </form> Du ser det sikkert ut av koden over, at når man trykker enter når man har aktivert Tag1 så ønsker jeg å kjøre "addEvent()"-funksjonen. Endret 23. desember 2007 av NorskFirefox
LostOblivion Skrevet 25. desember 2007 Skrevet 25. desember 2007 (endret) Kan dere ikke bruke... <html> <head><title>BBCode</title></head> <body> <p>HTML BBCode</p> </body> </html> Endret 25. desember 2007 av LostOblivion
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå