質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

2回答

4160閲覧

JSで入力された数字を表示して足していくコード

退会済みユーザー

退会済みユーザー

総合スコア0

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2015/08/24 02:14

下記のコードは「つもり貯金」というアプリケーションです
合計の貯金金額を

HTML

1<div id="sum"></div>

に表示したいのですがうまくたし算ができません
どうすればできますか?

JavaScript

1<!doctype html> 2<html> 3<head> 4 <meta charset="utf-8"> 5 <title>つもり貯金</title> 6</head> 7<body> 8 <!--合計の貯金額--> 9 <div id="sum"></div> 10 <!--貯金入力--> 11 <input id="today" type="text" placeholder="日付"><br> 12 <input id="reason" type="text" placeholder="何のつもり?"><br> 13 <input id="money" type="text" placeholder="貯金額"><br> 14 <input type="button" value="貯金" onclick="input_form();"><br> 15 <div id="log"></div> 16 17 18<script> 19 //入力フォーム 20 function input_form(){ 21 var sum = Number(0); 22 var today = document.getElementById('today').value; 23 var reason = document.getElementById('reason').value; 24 var money = Number(document.getElementById('money').value); 25 var result = today + ":" + reason + ":" + money + "円"; 26 var log = document.getElementById('log').innerHTML; 27 if(log != ""){ 28 log += "<br>"; 29 } 30 document.getElementById('log').innerHTML = log + result; 31 var txt_sum = document.getElementById('sum').innerHTML = sum + money; 32 save(); 33 } 34 //セーブandロード 35 window.onload = function () { 36 var sum_load = localStorage.getItem('txt_sum'); 37 var log_load = localStorage.getItem('result'); 38 document.getElementById('sum').innerHTML = sum_load; 39 document.getElementById('log').innerHTML = log_load; 40 } 41 42 function save(){ 43 localStorage.setItem('txt_sum', document.getElementById('sum').innerHTML); 44 localStorage.setItem('result', document.getElementById('log').innerHTML); 45 } 46 47</script> 48</body> 49 50</html>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

javascript

1 var txt_sum = document.getElementById('sum').innerHTML = sum + money;

上記部分を次のようにしてみてはいかがでしょうか。

javascript

1 document.getElementById('sum').innerHTML = parseInt(sum, 10) + parseInt(money, 10);

投稿2015/08/24 02:24

orange0190

総合スコア1698

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

毎回 sum を 0 にしているからだと思います。

javascript

1var sum = Number(0);

元のコードをなるべく維持したまま修正するなら、変数の sumsum 要素から読めばいいと思います。

javascript

1//var sum = Number(0); 2var sum = document.getElementById('sum').innerHTML - 0;

どうしても改行されます

div 要素がブロック要素だからです。

css で次のようにするか、

css

1#sum::before { 2 content: "\\" 3}

インライン要素に変更すると良いと思います。

html

1<span id="sum"></span>

投稿2015/08/24 03:48

編集2015/08/24 04:12
ngyuki

総合スコア4514

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2015/08/24 04:05

ありがとうございます 出来ました! もう一つお聞かせください <div id="sum"></div>の合計金額の前に¥と表示させたいのですが どうしても改行されます なぜなのでしょうか?
ngyuki

2015/08/24 04:12

追記しました
退会済みユーザー

退会済みユーザー

2015/08/24 06:57

ありがとうございます!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問