こんにちは。初心者です。
よろしくお願いします。
javascriptで、フォーム(テキストボックスとボタン)を用いたプログラムを書いているのですが、今現在はボタン(id="calbtn")で関数( calreq())を呼び出したのち、そのテキストボックスに入力された内容を処理しております。
今、新たに、ボタンだけではなく、Enterキーが押下されても関数が呼び出されるようにしたいと思い、onkeydownを用いて関数retu()を起動させるような、下記コードを書いてみましたが、上手く動作しませんでした。
(従来の通り、ボタンでは関数calreq()が起動できます)
どなたか、ボタンでも、Enterキーでも、関数が起動できる方法を教えて頂けないでしょうか?
ソースコード:
###html (<head>は省略)
<body> <div id="formarea"> <form name="frm"> <label>上限カロリーを設定して下さい<input type="text" name="maxcal" value=""></label> <input type="button" value="スタート" id="calbtn"> <input type="button" value="クリア" id="clrbtn"> </form> </div> <div id="asaarea"></div> <div id="hiruarea"></div> <div id="yoruarea"></div> <div id="sumarea"></div> </body>
###javascript (一部省略)
function start(){ ~ 省略 ~ } var ncal; function calreq(){ ncal=document.frm.maxcal.value; if (ncal==""){ alert("数値を入力してください"); } else { start(); } } function clr(){ document.frm.maxcal.value=""; } function retu(){ if (event.keyCode == 13){ calreq(); } } window.onload = function (){ document.getElementById("calbtn").onclick = calreq; document.getElementById("clrbtn").onclick = clr; document.onkeydown = retu; };
回答1件
あなたの回答
tips
プレビュー