2012-04-16 6 views
0

オプションを追加しようとすると価格計算機に問題があります。javascript/jqueryを使用した価格計算ツールのヘルプ(ドロップダウンリストオプションを追加しようとしています)

var firstoption=$('select#myselect')

私はオプションの値は、価格の値になったが、それを行うことができないよう希望:それが言うところ

は、私は何をしようとしていることである(jsFiddleはここhttp://jsfiddle.net/wemdragon/ZG8mを=) 。ショッピングカートでは動作しますが、JavaScriptでは動作しません。

多分私は間違った場所に値を追加しようとしていますが、どうしたらうまくいかないのか分かりません。

+0

'var firstoption = $( 'select#myselect')。val()' –

答えて

2

あなたの選択したIDは少なくともと表示されていましたが、id #myselectにアクセスしようとしました。これは、あなたのマークアップのidを変更しない限り、以下のようになります。私もこのオプションを選択しないためのデフォルト値の0を指定したことに気づいた

var firstoption = $('select#mySelect'); 

。なんらかの理由で、val()が0だったときに、!firstoption.val()がtrueの代わりにfalseを返します。これは、if文が予期していたようです。この場合、!0は明らかに真です。

は、私はあなたのマークアップに一致するようにロジックを変更し、あなたが期待または希望している可能性があるように振る舞うように見えた:

if (firstoption.val() == 0) { 
    error.html('Please include an option!'); 
    firstoption.focus(); 
} 

編集更新フィドル:http://jsfiddle.net/ZG8mv/8/

フォーカス()処刑は彼らが間違っているという順序で表示されます。つまり、幅がない場合は、オプションが指定されていない場合、そのボックスにフォーカスが移ります。これまでは、オプションメッセージが他の2つのメッセージよりも優先されていました。

+0

翻訳: 'var firstoption = $( '#mySelect'); ' – mplungjan

+0

あなたは大歓迎です。お役に立てて嬉しいです – veeTrain

関連する問題