前提・実現したいこと
簡単な計算をするアプリを作るために、HTMLのinput
から数値を取得し、計算した結果をHTMLに返したいのですが、コンソールにinput
要素がそのまま出力されます。
数値として取得するにはどうしたらよいでしょうか。
発生している問題
Console
1<input type="number" id="c" value="1"> 2<input type="number" id="i" value="1"> 3<input type="number" id="g" value="1"> 4<input type="number" id="x" value="1"> 5<input type="number" id="m" value="1">
output
1[object HTMLInputElement][object HTMLInputElement][object HTMLInputElement]
該当のソースコード
HTML
1 2 <div id="input"> 3 <p id="moji cc">民間消費(C)</p><input type="number" id="c" value="1"> 4 <p id="moji ii">民間投資(I)</p><input type="number" id="i" value="1"> 5 <p id="moji gg">政府支出(G)</p><input type="number" id="g" value="1"> 6 <p id="moji xx">輸出(X)</p><input type="number" id="x" value="1"> 7 <p id="moji mm">輸入(M)</p><input type="number" id="m" value="1"> 8 </div> 9 <button id="keisan"> 10 <p id="keisansuru">計算する</p> 11 </button> 12 <p id="output"></p> 13
JavaScript
1function math(){ 2 var c = document.getElementById("c"); 3 console.log(c); 4 var i = document.getElementById("i"); 5 console.log(i); 6 var g = document.getElementById("g"); 7 console.log(g); 8 var x = document.getElementById("x"); 9 console.log(x); 10 var m = document.getElementById("m"); 11 console.log(m); 12 var num = x - m; 13 return c + i + g + num; 14}; 15 16document.getElementById("keisan").onclick = function(){ 17 var y = math(); 18 document.getElementById("output").textContent = y; 19};
試したこと
JavaScript
のParseInt
を使用してみたり、input
のtype
要素をtel
にしてみたりしましたが、何も変わりませんでした。
(NaNになるくらいでした)
回答1件
あなたの回答
tips
プレビュー