判断する関数が必要です: (1) 2 つの入力に値がある場合、エラーをスローします。(2) どちらの入力にも値がない場合は、エラーをスローします。(3) 入力 B または入力 D に値がある場合、どの計算関数を使用するかを決定します。次のように呼び出されると、両方の Calculate 関数が機能します。
onClick="Calculate(this.form.input_A.value, this.form.input_B.value, this.form.input_C.value, this.form)"
onClick="Calculate2(this.form.input_A.value, this.form.input_C.value, this.form.input_D.value, this.form)"
しかし、私が以下の関数を呼び出すために使用するとき:
onclick="compute();"
エラーは機能しますが、Calculate 関数を正しく呼び出していません。明らかなものだと確信していますが、表示されません。エラー関数が追加される前のように、回答が表示されなくなりました。
<SCRIPT LANGUAGE="JavaScript">
function compute() {
var B = document.getElementById("input_B").value;
var D = document.getElementById("input_D").value;
if (B != "" && D != "") {
alert("You may only enter Assessment or Annual Property Taxes.");
} else if (B != "") {
Calculate(B);
} else if (D != "") {
Calculate2(D);
} else {
alert("You must enter a value into either Assessment or Annual Property Taxes.");
}
}
function Calculate(Atext, Btext, Ctext, form) {
var A = parseFloat(Atext);
var B = parseFloat(Btext);
var C = parseFloat(Ctext);
form.Answer.value = ((B - A) * C) / 1000;
}
function Calculate2(Atext, Ctext, Dtext, form) {
var A = parseFloat(Atext);
var C = parseFloat(Ctext);
var D = parseFloat(Dtext);
form.Answer.value = D - ((A * C) / 1000);
}
function ClearForm(form) {
form.input_A.value = "";
form.input_B.value = "";
form.input_C.value = "";
form.input_D.value = "";
form.Answer.value = "";
}
</SCRIPT>