0

ユーザーが入力(購入価格)を入力し、入力された金額に基づいて計算を生成するJavaScriptリース計算機を作成しようとしています(さらに、範囲を追加して、一定の割合を上下させます計算された数)。

これが私のJavaScriptの例です:

<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
function aplusb(form) {

a=eval(Calc.num1.value)

if (a < 1000)
  {
  b= 0.05372
  c=a * b
  Calc.Input.value = c
  Calc.Input2.value = c - (c * 0.15)
  Calc.Input3.value = c + (c * 0.15))
  }
else if (1001 < a < 2000)
  {
  b= 0.04875
  c=a * b
  Calc.Input.value = c
  Calc.Input2.value = c - (c * 0.15)
  Calc.Input3.value = c + (c * 0.15))
  }
else
  {
  b= 0.04689
  c=a * b
  Calc.Input.value = c
  Calc.Input2.value = c - (c * 0.15)
  Calc.Input3.value = c + (c * 0.15))
  }
}

</script>

スクリプトを呼び出すために使用しているhtml

<form name="Calc" action="--WEBBOT-SELF--" method="POST">
<p>

Enter Purchase Price:
<input type="text" name="num1" size="12" tabindex="1">

<br> Calculation: <input type="text" name="Input" size="17" tabindex="4">

Range
<input type="text" name="Input2" size="17" tabindex="4">
<input type="text" name="Input3" size="17" tabindex="4">

</p>
<input type="button" name="sum"  value="Calculate" OnClick="aplusb(this.form)" tabindex="3">
</form>

スクリプトは、任意の数値に対して同じ計算を実行している場合は正常に機能しますが、「if」コマンドを追加するとすぐに機能しなくなります。基本的に、elseコマンドの場合は約10のグループがあります。どんな助けでも大歓迎です!ありがとう!

4

2 に答える 2

3

私は間違っているかもしれませんが、これはJavaScriptでは有効ではないと思います

else if (1001 < a < 2000)

私はそれがすべきだと思います

else if (a > 1001 && a < 2000)

私が間違っている場合は誰かが私を訂正してください。

于 2012-07-13T21:03:32.513 に答える
0

あなたの主な問題は、セミコロンの欠如と、次のようなdouble))の行です。

Calc.Input3.value = c + (c * 0.15))

修正済み:

Calc.Input3.value = c + (c * 0.15);

修正されたバージョンは次のとおりです:http://jsbin.com/atelen/edit#preview

于 2012-07-13T21:09:50.063 に答える