1

jsのifステートメントについて質問があります。私は声明を出しましたが、うまくいかないようです。「ボタン1」を1回クリックするだけでこれらのステートメントを確認したいと思います。スクリプトは、合計を計算する前に、輸送費があるかどうかを確認することです。誰かが私の問題を解決する方法を教えてもらえますか?

これが私のスクリプトです:

<SCRIPT TYPE="text/javascript">
function berekeningen()
{

if (document.getElementById("DropdownMenu1").value = "Eeklo" && document.getElementById("Order_Subtotal").firstChild.data >= 20)
  {
  document.getElementById("Transportation_Cost").value="0.00";
  }
else
  {
  document.getElementById("Transportation_Cost").value="3.00";
  }

if  (document.getElementById("DropdownMenu1").value = "Adegem" && document.getElementById("Order_Subtotal").firstChild.data >= 25)
  {
  document.getElementById("Transportation_Cost").value="0.00";
  }
else
  {
  document.getElementById("Transportation_Cost").value="3.00";
  }

if  (document.getElementById("DropdownMenu1").value = "Kaprijke" && document.getElementById("Order_Subtotal").firstChild.data >= 25)
  {
  document.getElementById("Transportation_Cost").value="0.00";
  }
else
  {
  document.getElementById("Transportation_Cost").value="3.00";
  }

if  (document.getElementById("DropdownMenu1").value = "Lembeke" && document.getElementById("Order_Subtotal").firstChild.data >= 25)
  {
  document.getElementById("Transportation_Cost").value="0.00";
  }
else
  {
  document.getElementById("Transportation_Cost").value="3.00";
  }

if  (document.getElementById("DropdownMenu1").value = "Oosteeklo" && document.getElementById("Order_Subtotal").firstChild.data >= 25)
  {
  document.getElementById("Transportation_Cost").value="0.00";
  }
else
  {
  document.getElementById("Transportation_Cost").value="3.00";
  }

if  (document.getElementById("DropdownMenu1").value = "Sint-Laureins" && document.getElementById("Order_Subtotal").firstChild.data >= 25)
  {
  document.getElementById("Transportation_Cost").value="0.00";
  }
else
  {
  document.getElementById("Transportation_Cost").value="3.00";
  }

if  (document.getElementById("DropdownMenu1").value = "Ursel" && document.getElementById("Order_Subtotal").firstChild.data >= 25)
  {
  document.getElementById("Transportation_Cost").value="0.00";
  }
else
  {
  document.getElementById("Transportation_Cost").value="3.00";
  }

if  (document.getElementById("DropdownMenu1").value = "Waarschoot" && document.getElementById("Order_Subtotal").firstChild.data >= 25)
  {
  document.getElementById("Transportation_Cost").value="0.00";
  }
else
  {
  document.getElementById("Transportation_Cost").value="3.00";
  }

if  (document.getElementById("DropdownMenu1").value = "Zomergem" && document.getElementById("Order_Subtotal").firstChild.data >= 25)
  {
  document.getElementById("Transportation_Cost").value="0.00";
  }
else
  {
  document.getElementById("Transportation_Cost").value="3.00";
  }

if  (document.getElementById("DropdownMenu1").value = "Knesselare")
  {
  document.getElementById("Transportation_Cost").value="5.00";
  }

if  (document.getElementById("DropdownMenu1").value = "Lovendegem")
  {
  document.getElementById("Transportation_Cost").value="5.00";
  }

if  (document.getElementById("DropdownMenu1").value = "Bassevelde")
  {
  document.getElementById("Transportation_Cost").value="5.00";
  }

if  (document.getElementById("DropdownMenu1").value = "Maldegem")
  {
  document.getElementById("Transportation_Cost").value="5.00";
  }
}
</SCRIPT>

編集:変数を使用してスクリプトを少し変更しましたが、機能しません

<script type="text/javascript" src="http://code.jquery.com/jquery-1.8.0.js"></script>

<SCRIPT TYPE="text/javascript">
function berekeningen()
{
   var plaats           = document.getElementById("plaats").value;
   var kosten           = document.getElementById("kosten").value;
   var subtotaal        = document.getElementById("Bestelling_subtotaal").firstChild.data
   var class_1_plaatsen = new Array("Eeklo");
   var class_2_plaatsen = new Array("Adegem", "Kaprijke", "Lembeke", "Oosteeklo",
                                    "Sint-Laureins", "Ursel", "Waarschoot", "Zomergem");
   var class_3_plaatsen = new Array("Knesselare", "Lovendegem", "Bassevelde", "Maldegem");

   if ($.inArray(plaats, class_1_plaatsen) >= 0) {

      // Berekening voor plaatsen in prijscategorie 1 hieronder.

   }
   else if ($.inArray(plaats, class_2_plaatsen) >= 0) {

      // Berekening voor plaatsen in prijscategorie 2 hieronder.

   }
   else {

      // Berekening voor overige plaatsen hieronder.

   }
}
</SCRIPT>

私はこれを作りたくない:

var plaats =class_1_plaatsenおよびsubtotaal<15の場合、警告します(vanafの最小値は15ユーロです)。ただし、subtotaalが15〜20の場合、kosten = 3です。ただし、subtotaal> = 20の場合、kosten=0です。

var plaats =class_2_plaatsenおよびsubtotaal<20の場合、アラートを出します(vanafの最低€20を活用します)。ただし、subtotaalが20〜25の場合、kosten = 3です。ただし、subtotaal> = 25の場合、kosten=0です。

var plaats =class_3_plaatsenおよびsubtotaal<20の場合、アラートを出します(vanafの最低€20を活用します)。しかし、subtotaal> = 20の場合、kosten=5です。

ディアステン

4

2 に答える 2

1

すべての if ステートメントに 2 つの == があるべきではありません

if  (document.getElementById("DropdownMenu1").value == "Knesselare")
于 2012-08-13T23:00:48.447 に答える
1

通常、if ステートメントで単一の = 記号を使用することは望ましくありません。新しい変数の割り当てとして評価されます。

= の代わりに == を次のように使用します。

if (document.getElementById("DropdownMenu1").value == "Eeklo" && document.getElementById("Order_Subtotal").firstChild.data >= 20)
于 2012-08-13T23:01:17.557 に答える