0

だから私がする必要があるのは、何らかの形でフォームに価格を即座に更新させることです。教授が提供するバリデーターは、チェックボタンをクリックするとチェックを行い、自動的に空白を埋め、価格とサイズ (1 つのサイズのみ) を選択します。

ここにxhtmlがあります:

<select name='shirts' size='2'  onchange='calculateItemPrice()'>
    <option value='Shirts Size'> Shirt Size</option>
    <option value='Small'>Small Shirt</option>
    <option value='Medium'>Medium shirt</option>
    <option value='Large'>Large shirt</option>
    <option value='xLarge'>xLarge shirt</option>
</select>

ここに問題があります: バリデーターを使用して [小さいサイズ] のチェックをクリックすると、フォームのすべての空白が埋められ、[小さいシャツ] が自動的に選択されますが、価格は更新されません。ただし、教授の Web サイトで他のチェック ボタン (Medium/Large/xLarge をチェック) をクリックすると、すべてが入力され、適切なサイズが選択され、価格が更新されます。だから私の問題は小さいサイズだけにあるようです.

ユーザーが手動でサイズを選択すると、計算機能が機能するようになりました(教授によって提供されました)。

HTMLで何かをする必要があるのか​​ 、javascriptの選択機能で何かをする必要があるのか​​ わかりません。コードは次のとおりです(誰かが以前にここで質問して問題を解決しましたが、質問は削除されたので、私はミスを犯した)

function validatefield05(errMessages)
{

   if(document.sizes.shirts.selectedIndex ==0)        
      {
        errMessages +="<li class='b1'>You must Select a Size</li>\n";
      }

    if(!document.sizes.shirts.value)     
      {
        errMessages +="<li class='b1'>You must Select a Size</li>\n";
      }
   return errMessages;
}

==0 をいじって 1/2 などにしてみましたが、その結果、オプションの 1 つを選択できなくなります。

どんなアイデアや提案も大歓迎です。

これは課題ではなく、来週の試験に向けて練習するための演習です

4

1 に答える 1

1

あなたのコードは onChange で動作するので、おそらくデフォルト オプションを追加するだけで済みます。

<select name='sizes' size='2'  onchange='calculateItemPrice()'>
    <option value=""> Choose size </option>  <=========
    <option value='Shirts'> Shirt Size</option>
    <option value='Small'>Small Shirt</option>
    <option value='Medium'>Medium shirt</option>
    <option value='Large'>Large shirt</option>
    <option value='xLarge'>xLarge shirt</option>
</select>

ライブデモ

于 2012-04-08T20:53:51.560 に答える