Gå til innhold

Enter i form


Anbefalte innlegg

Videoannonse
Annonse

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 av luxus
Lenke til kommentar

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");

Lenke til kommentar

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 av NorskFirefox
Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...