-4

コードに問題があります。質問は次のように書かれています。

ガロンあたりのマイル数を計算するために使用できる Web ページを作成します。

  1. 開始走行距離、終了走行距離、使用ガロン、ガロンあたりの走行距離の 4 つのテキスト要素を含むフォームを Web ページに追加します。要素の各 value 属性に 0 の初期開始値を割り当てます。

  2. calcMPG() という名前の JavaScript 関数を呼び出す onchange イベント ハンドラーを、開始走行距離、終了走行距離、使用ガロンのテキスト ボックスに追加します。

  3. ドキュメント ヘッドのスクリプト セクションに calcMPG() 関数を作成します。calcMPG() 関数内で、startMiles、endMiles、gallons の 3 つの変数を宣言し、開始走行距離、終了走行距離、およびガロンに割り当てられた値で各変数を初期化します。

  4. if を作成します。. . 複合条件式内で isNaN() 関数を使用して、startMiles、endMiles、gallons 変数に数値が含まれているかどうかを判別する else ステートメント。

  5. 変数に数値変数が含まれていない場合は、数値を入力する必要があることをユーザーに通知するアラート ダイアログ ボックスを表示します。変数に数値が含まれている場合は、else 句でガロンあたりの走行距離の計算を実行し、その結果をフォームの [ガロンあたりの走行距離] テキスト ボックスに割り当てる必要があります。

  6. ガロンあたりのマイルを計算する式は、(end_mileage - starting_mileage) / ガロン*です。

これは私が持っているものですが、機能していません:

<script type="text/javascript">
function calcMPG(){
   var startMiles = document.economy.startMilage.value;
   var endMiles = document.economy.endMilage.value;
   var gallons = document.economy.galonsUsed.value;


   if (isNaN(startMiles) = false)   
   {
      window.alert("You can only enter numbers") 
   }        }
   else 
   {
      document.mpg = document.write((endMiles - startMiles) / gallons) 
   }

}
</script>

<form name="economy">
<p>Starting Milages
<input type="text" name="starMilage" class="input" onchange="calcMPG()" /></p>
<p>Ending Milages
<input type="text" name="endMilage" class="input" onchange="calcMPG()" /></p>
<p>Galons Used
<input type="text" name="galonsUsed" class="input" onchange="calcMPG()" /></p>
<p>Miles Per Galon
<input type="text" name="mpg" class="input" /></p>
</form>
4

4 に答える 4

0
  1. Firefox を使用している場合は、FireBugをインストールしてください: https://addons.mozilla.org/es/firefox/addon/firebug/
    chrome を使用する場合は、何もインストールする必要はありません。
  2. プレスF12 (@クリストフに感謝)
  3. コンソールを見てください。多くのエラーが表示されます。コードをコンパイルするためにここにいるわけではないので、事前に解決してください。
于 2013-02-13T10:39:26.043 に答える
0

する必要があります:

}前に外して後ろelseに置いて; alert document.write

<script type="text/javascript">
function calcMPG(){
   var startMiles = document.economy.startMilage.value;
   var endMiles = document.economy.endMilage.value;
   var gallons = document.economy.galonsUsed.value;

   if (isNaN(startMiles))   
   {
       window.alert("You can only enter numbers");
   }       
   else 
   {
       document.mpg = document.write((endMiles - startMiles) / gallons);
   }
}
</script>
于 2013-02-13T10:37:58.150 に答える