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

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

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

JSP(Java Server Pages)とは、ウェブアプリケーションの表示レイヤーに使われるサーバーサイドの技術のことです。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

JavaScript

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

1回答

1708閲覧

単価、個数を入力すると自動で合計金額を表示させたい

monolith123

総合スコア20

JSP

JSP(Java Server Pages)とは、ウェブアプリケーションの表示レイヤーに使われるサーバーサイドの技術のことです。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

JavaScript

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2018/01/11 13:51

###前提・実現したいこと
イメージ説明
単価入力、数量を選択すると金額、合計金額が表示されるプログラムを書きたいのですが
金額が反映されません。

どうかご教授のほどよろしくお願いします。
###発生している問題・エラーメッセージ

単価、数量を入力しても金額が反映されない

###該当のソースコード

java

1<%@ page language="java" contentType="text/html; charset=UTF-8" 2 pageEncoding="UTF-8"%> 3<!DOCTYPE html> 4 5<html> 6<head> 7<title>Register</title> 8 9<script type="text/javascript"> 10function keisan(){ 11 12 // 設定開始 13 14 var tax = 8; // 消費税率 15 16 // 商品1 17 var price1 = document.form1.goods1.selectedIndex * money1; // 単価を設定 18 document.form1.field1.value = price1; // 小計を表示 19 20 // 商品2 21 var price2 = document.form1.goods2.selectedIndex * money2; // 単価を設定 22 document.form1.field2.value = price2; // 小計を表示 23 24 // 商品3 25 var price3 = document.form1.goods3.selectedIndex * money3; // 単価を設定 26 document.form1.field3.value = price3; // 小計を表示 27 28 // 合計を計算 29 var total1 = price1 + price2 + price3; 30 31 // 設定終了 32 33 34 document.form1.field_total1.value = total1; // 合計を表示 35 36 var tax2 = Math.round((total1 * tax) / 100); 37 document.form1.field_tax.value = tax2; // 消費税を表示 38 39 document.form1.field_total2.value = total1 + tax2; // 税込合計を表示 40 41} 42 43// --> 44</script> 45 46</head> 47<body> 48 49<form action="#" name="form1"> 50 51<table border="1" style="background-color: #ffffff;"> 52<tr> 53<th>商品名</th> 54<th>単価</th> 55<th>数量</th> 56<th>金額</th> 57</tr> 58<tr> 59<td><input type="text"></td> 60<td align="right"><input type="text" class="money1"></td> 61<td><select name="goods1" onChange="keisan()"> 62<option>0</option> 63<option>1</option> 64<option>2</option> 65<option>3</option> 66<option>4</option> 67<option>5</option> 68</select></td> 69<td><input type="text" name="field1" size="8" value="0"></td> 70</tr> 71<tr> 72<td><input type="text"></td> 73<td align="right"><input type="text" class="money1"></td> 74<td><select name="goods2" onChange="keisan()"> 75<option>0</option> 76<option>1</option> 77<option>2</option> 78<option>3</option> 79<option>4</option> 80<option>5</option> 81</select></td> 82<td><input type="text" name="field2" size="8" value="0"></td> 83</tr> 84<tr> 85<td><input type="text"></td> 86<td align="right"><input type="text" class="money1"></td> 87<td><select name="goods3" onChange="keisan()"> 88<option>0</option> 89<option>1</option> 90<option>2</option> 91<option>3</option> 92<option>4</option> 93<option>5</option> 94</select></td> 95<td><input type="text" name="field3" size="8" value="0"></td> 96</tr> 97<tr> 98<td align="right" colspan="3">合計</td> 99<td><input type="text" name="field_total1" size="8" value="0"></td> 100</tr> 101<tr> 102<td align="right" colspan="3">消費税</td> 103<td><input type="text" name="field_tax" size="8" value="0"></td> 104</tr> 105<tr> 106<td align="right" colspan="3"><strong>税込合計</strong></td> 107<td><input type="text" name="field_total2" size="8" value="0"></td> 108</tr> 109</table> 110 111</form> 112 113</body> 114</html>

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

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

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

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

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

guest

回答1

0

ベストアンサー

ざっと見ただけですが、定義されていない値をかけようとしているので失敗するのでは。

js

1document.form1.goods1.selectedIndex * money1 // 「money1」が定義されずに使われている

投稿2018/01/11 14:06

kei344

総合スコア69407

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

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

monolith123

2018/01/11 14:45

回答ありがとうございます。 定義した初期値には何を入れれば良いんですか?
kei344

2018/01/11 14:58

> 定義した初期値には何を入れれば良いんですか? 何と何をかけようとしているかがわからないので、なんとも。money1 に必要なものが入っていれば良いのでは?
moredeep

2018/01/11 23:45

予想ですが、class="money1"がname="money1"の間違いであり、money1はdocument.form1.money1.valueの間違いなのでは?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問