※ ChatGPTを利用し、要約された質問です(原文:AJAXの計算式の中にIF文を入れて表示したい)
AJAXの計算式にIF文を入れて表示したい
このQ&Aのポイント
下記の2つのファイルで、フォームから入力した数値同士の「足し算の結果」をAJAXで表示できます。
質問者は、この計算式の改造を試みているが、うまく表示されていない。
修正が必要な部分は、改造したIF文の構文エラーであり、正しい表現に修正する必要がある。
下記の2つのファイルで、フォームから入力した数値同士の「足し算の結果」をAJAXで表示できます。
********************************************
【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;
}
************************************************
【質問】
このjavascriptを改造し、入力した数値についての「足し算の結果」が正の数だった場合には「正の数」、負の数だった場合は「負の数」と表示すべく改造しております。下記の改造を施したのですが、うまく表示されません。
下記の文のどこが誤りか修正頂けませんでしょうか?
宜しくお願い致します。
【JAVASCRIPT(culc2.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 =
"(if((sum > 0) {
document.write("正の数");
}
else((sum <= 0) {
document.write("負の数");
}
))";
}
message.innerHTML = textMessage;
}
お礼
出来ました!! 有難うございました。 たしかに、""で囲えば文字ですね。 ご指導有難うございました。