みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

javascriptの計算結果をvalue=""に

javascriptの計算結果をフォームの中のvalue=""内部に表示し、送信できるようにしたいというのが質問の趣旨です。

                記

下記の2つのファイルで、フォームから入力した数値同士の「足し算の結果」を表示できます。

(HTMLファイル下段 <p id="message"></p>の部分で表示します。)

********************************************

【HTML】

<script language="JavaScript" type="text/javascript" src="js/culc.js"></script>
<form name="f1">
<input type="text" id="text1" name="text1" size="10" maxlength="10" />+
<input type="text" id="text2" name="text2" size="10" maxlength="10" />
<input type="button" value="足す" onclick="readText()" />
</form>


<p id="message"></p>


*******************************************

【JAVASCRIPT(culc.js)】

function readText() {
var text1 = document.getElementById("text1");
var text2 = document.getElementById("text2");
var message = document.getElementById("message");

var str_val1 = text1.value;
var str_val2 = text2.value;
var sum;

if (isNaN(str_val1) || str_val1 == "" || isNaN(str_val2) || str_val2 == "") {
textMessage = "数値以外の文字が入っています";
} else {
//sum = str_val1 + str_val2;
sum = parseFloat(str_val1) + parseFloat(str_val2);
textMessage = "合計は、" + sum + "です";
}
message.innerHTML = textMessage;

}

************************************************

【質問】

次にこのHTMLを改造し、フォームから計算値を送信することとしました。

************************************************

【HTML】

<script language="JavaScript" type="text/javascript" src="js/culc.js"></script>
<form name="f1">
<input type="text" id="text1" name="text1" size="10" maxlength="10" />+
<input type="text" id="text2" name="text2" size="10" maxlength="10" />
<input type="button" value="足す" onclick="readText()" />
</form>

<form action="form.cgi" method="post" name="form2" id="form2">
<input type="hidden" name="plus" value="<p id="message"></p>">
<input type="button" value="送信" onClick="disableButton()" name="button1">
</form>

************************************************

問題点

上記のように、計算結果を表示出来るはずの<p id="message"></p>を送信フォームのvalue=の直後に記載しただけなのですが、なぜか送れません。
<p id="message"></p> を独立して記載しているときは計算値をそのまま表示していたのですが、value="<p id="message"></p>"> と value= の中に記載した瞬間に単なる文字の羅列になってしまうようです。

value="<p id="message"></p>">
value='<p id="message"></p>'>
value="<p id='message'></p>">
value='<p id='message'></p>'>

と試してみましたが、いずれもうまきませんでした。

どのようにすれば、value="" の中に計算結果が入るか教えてください。

宜しくお願い致します。

投稿日時 - 2013-02-12 21:20:58

QNo.7942038

困ってます

質問者が選んだベストアンサー

http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-49531485

投稿日時 - 2013-02-13 10:15:53

お礼

有難うございます。
出来ました!!
感謝です。

投稿日時 - 2013-02-13 22:16:27

ANo.2

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問