2017-03-02 1 views
0

Existe-t-il un moyen de soumettre une entrée avec enter via javascript? Je ne pouvais pas trouver une solution. Désolé je suis un peu comme un débutant. Merci de votre aide!Entrée soumettre avec entrer

<div class="ergonomierechner"> 
    <p style="text-align: center; font-size: 150%; font-weight: bold; margin-top: 5px;">Individueller Ergonomie-Rechner</p> 

    <p>Deine K&ouml;rpergr&ouml;&szlig;e in cm: 
     <input type="text" id="eing1" placeholder=" z. B. 175"> 
     <input type="button" value="Berechnen" onClick="ausgeben()"> 
     <br> 
    </p> 

    <table style="width:100%"> 
     <tr> 
     <th>Tischh&ouml;he im Sitzen:</th> 
     <th>Armlehnenh&ouml;he:</th> 
     <th>Stuhlh&ouml;he:</th> 
     <th>Tischh&ouml;he im Stehen:</th> 
     </tr> 
     <tr style="text-align: center;"> 
     <td><p id="tischsitzen"></p></td> 
     <td><p id="armlehne"></p></td> 
     <td><p id="stuhl"></p></td> 
     <td><p id="tischstehen"></p></td> 
     </tr> 
    </table> 

</div> 

<script type="text/javascript"> 

$("#eing1").keyup(function(event) { 
    if (event.keyCode == 13) { 
     $("ausgeben()").click(); 
    } 
}); 

function ausgeben(){ 

    var koerpergroesse = parseInt(document.getElementById("eing1").value) 

    tischsitzen = koerpergroesse/2.43; 
    tischsitzen = Math.round(tischsitzen); 
    armlehne = koerpergroesse/6.75; 
    armlehne = Math.round(armlehne); 
    stuhl = koerpergroesse/3.72; 
    stuhl = Math.round(stuhl); 
    tischstehen = koerpergroesse/1.52; 
    tischstehen = Math.round(tischstehen); 

    document.getElementById("tischsitzen").innerHTML=tischsitzen + " cm"; 
    document.getElementById("armlehne").innerHTML=armlehne + " cm"; 
    document.getElementById("stuhl").innerHTML=stuhl + " cm"; 
    document.getElementById("tischstehen").innerHTML=tischstehen + " cm"; 

} 

</script> 

Existe-t-il un moyen de soumettre une entrée avec enter via javascript? Je ne pouvais pas trouver une solution. Désolé je suis un peu comme un débutant. Merci de votre aide!

+0

soumettons à où? Parce que je ne vois pas vraiment où vous vous soumettez. Si vous avez un 'button type =" submit "' dans un 'formulaire' alors il peut soumettre avec une entrée sans javascript supplémentaire –

+0

la 2ème entrée est le bouton avec la fonction ausgeben(). \t merci beaucoup. J'ai changé le en . Maintenant cela fonctionne sans aucun code js supplémentaire, mais il n'apparaît que quelques ms et disparaît. Si j'appuie sur le bouton, il apparaîtra normalement –

+0

juste une note, '' et '

Répondre

1

Si vous enroulez votre input avec un tag form, vous pourrez réaliser ce que vous voulez sans utiliser JavaScript.

<div class="ergonomierechner"> 
    <p>Individueller Ergonomie-Rechner</p> 

    <p>Deine K&ouml;rpergr&ouml;&szlig;e in cm:</p> 

    <form> 
     <input type="text" id="eing1" placeholder=" z. B. 175"> 
     <input type="button" value="Berechnen" onClick="ausgeben()"> 
    </form> 

    <table style="width:100%"> 
     <tr> 
      <th>Tischh&ouml;he im Sitzen:</th> 
      <th>Armlehnenh&ouml;he:</th> 
      <th>Stuhlh&ouml;he:</th> 
      <th>Tischh&ouml;he im Stehen:</th> 
     </tr> 
     <tr style="text-align: center;"> 
      <td><p id="tischsitzen"></p></td> 
      <td><p id="armlehne"></p></td> 
      <td><p id="stuhl"></p></td> 
      <td><p id="tischstehen"></p></td> 
     </tr> 
    </table> 
</div> 

Aussi, dans votre fonction ausgeben vous définissez plusieurs variables sans utiliser var et, à cause de cela, vous polluer l'espace de noms global. Faites comme ceci:

function ausgeben() { 
    var koerpergroesse = parseInt(document.getElementById("eing1").value) 

    var tischsitzen = koerpergroesse/2.43; // Initialize with `var` keyword 
    tischsitzen = Math.round(tischsitzen); // Reassign without `var` keyword 

    var armlehne = koerpergroesse/6.75; 
    armlehne = Math.round(armlehne); 

    var stuhl = koerpergroesse/3.72; 
    stuhl = Math.round(stuhl); 

    var tischstehen = koerpergroesse/1.52; 
    tischstehen = Math.round(tischstehen); 

    document.getElementById("tischsitzen").innerHTML=tischsitzen + " cm"; 
    document.getElementById("armlehne").innerHTML=armlehne + " cm"; 
    document.getElementById("stuhl").innerHTML=stuhl + " cm"; 
    document.getElementById("tischstehen").innerHTML=tischstehen + " cm"; 
} 

De cette façon, vos variables koerpergroesse, tischsitzen, armlehne, stuhl et tischstehen sont déclarés dans le cadre de votre fonction.

Voici quelques liens sur Scopes qui peuvent être utiles:

https://developer.mozilla.org/en-US/docs/Glossary/Scope

https://en.wikipedia.org/wiki/Scope_(computer_science)

https://scotch.io/tutorials/understanding-scope-in-javascript

+0

merci beaucoup. Je change aussi le en . Maintenant cela fonctionne sans aucun code js supplémentaire, mais il n'apparaît que quelques ms et disparaît. Si j'appuie sur le bouton, ça apparaîtra normalement –

0

Vous chould extrayez des codes Char (Codes clés) :)

Entrez est = 13 :)

quelque chose similair à:

Javascript

function submitForm(){ 
    document.formName.submit(); 
    document.formName.method='post'; 
} 

document.onkeydown=function(){ 
    if(window.event.keyCode=='13'){ 
     submitForm(); 
    } 
} 
+0

J'ai essayé d'implémenter votre solution mais sth. ne travaille pas. J'ai édité mon post ci-dessus. Pourriez-vous y jeter un coup d'œil, s'il vous plaît? –

0

En utilisant jQuery, voici l'une des nombreuses façons d'accomplir ceci:

$(".my_input_box").keyup(function(event) { 
    if (event.keyCode == 13) { 
     $(".search_button").click(); 
    } 
}); 
+1

http://needsmorejquery.com/ –