Javascriptのめちゃくちゃ初心者です。
計算機アプリのjQueryでの作成の仕方を見つけ動作したので、Javascriptの方が基本なのかなと思ってJavascriptで書いてみました。
でもJavascriptに変更すると、jQueryだと#hyouji内に計算の答えが表示されていたものが真っ白で表示されなくなりました。
答えを表示させるにはJavascriptをどう修正すればよいかをご教示いただければ幸いです。
よろしくお願いいたします。
【html】 <body> <div id="content"> <div id="hyouji"></div> <div id="num_box"> <input id="num1"> <input id="num2"> </div> <button type="button" class="calbutton" id="plus">+</button> <button type="button" class="calbutton" id="minus">--</button> <button type="button" class="calbutton" id="multi">×</button> <button type="button" class="calbutton" id="divs">÷</button> </body> 【jQuery】 $(function () { $('.calbutton').click(function() { var a = +($("#num1").val()); var b = +($("#num2").val()); var c; switch($(this).attr("id")){ case "plus": c = a + b; break; case "minus": c = a - b; break; case "multi": c = a * b; break; case "divs": c = a / b; break; } $("#hyouji").html(c); }); }); 【Javascript】 document.addEventListener("DOMContentLoaded", function() { var button = document.getElementsByTagName("button"); button.addEventListener("click", function(e) { e.preventDefault(); var num1 = document.getElementById("num1").value; var num2 = document.getElementById("num2").value; var sum; switch (this.getAttribute("id")) { case "plus": sum = parseFloat(num1) + parseFloat(num2); break; case "minus": sum = parseFloat(num1) - parseFloat(num2); break; case "multi": sum = parseFloat(num1) * parseFloat(num2); break; case "divs": parseFloat(num1) / parseFloat(num2); break; } var hyouji = document.getElementById("hyouji"); hyouji.innerHTML = sum; }); });
試したこと
jQueryとJavascriptの変換を調べて部分部分を置き換えました。
回答2件
あなたの回答
tips
プレビュー