2017-03-02 34 views
0

入力をjavascript経由で入力してもらう方法はありますか?私は解決策を見つけることができませんでした。申し訳ありません、私は初心者のようです。ご協力いただきありがとうございます!入力で入力してください

<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> 

入力をjavascript経由で入力する方法はありますか?私は解決策を見つけることができませんでした。申し訳ありません、私は初心者のようです。ご協力いただきありがとうございます!

+0

がどこに送信しますか?私は実際にあなたがどこに提出しているかわかりません。フォームの中に 'button type =" submit "がある場合、それは追加のjavascriptなしで入力することができます –

+0

2番目の入力は関数ausgeben()を持つボタンです。 \t ありがとうございます。私はに変更しました。今は余分なjsコードなしで動作しますが、それはわずか数ミリ秒表示され、消えます。ボタンを押すと、普通は –

+0

のように表示され、 'input type =" submit ">'と '

答えて

1

formタグで囲むと、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> 

また、あなたの関数でausgebenあなたがvarを使用せずに、いくつかの変数を定義していると、そのため、あなたはグローバルな名前空間を汚染しています。このようにそれを実行します。

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

そうすれば、あなたの変数koerpergroessetischsitzenarmlehnestuhl、およびtischstehenはあなたの関数のスコープ内で宣言されています。ここで

役立つことができスコープについてのカップルのリンクは以下のとおりです。

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

ありがとうございます。また、に変更します。今は余分なjsコードなしで動作しますが、それはわずか数ミリ秒表示され、消えます。ボタンを押すと、正常に表示されます –

0

あなたはシャアコード(キーコード)をチェックアウトchould :)

は、入力がにsimilair = 13 :)

ものです:

Javascriptを

のjQueryを使用して
function submitForm(){ 
    document.formName.submit(); 
    document.formName.method='post'; 
} 

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

私はあなたのソリューションを実装しようとしましたが、sthです。動作していません。私は上記の投稿を編集しました。多分あなたにそれを見てもらえますか? –

0

、ここにありますこれを達成するための多くの方法の1つ:

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

http://needsmorejquery.com/ –

関連する問題