ドロップダウンの値に応じて、特定の div にクラスを追加する 3 つのドロップダウンがあります。
<select name="item1">
<option>Blue</option>
<option>Green</option>
<option>Red</option>
</select>
<select name="item2">
<option>Blue</option>
<option>Green</option>
<option>Red</option>
</select>
<select name="item3">
<option>Blue</option>
<option>Green</option>
<option>Red</option>
</select>
<div class="product">
<div class="item1"></div>
<div class="item2"></div>
<div class="item3"></div>
</div>
ドロップダウンの値に応じて css クラスを追加しようとしています。たとえば、ドロップダウン item1 からオプション blue が選択されている場合、クラス.blueをdiv item1に追加したいと思います。
ドロップダウンの代わりにチェックボックスを使用していましたが、次のコードがありました。
$(document).ready(function($){
$('input#red').change(function(){
if($(this).is(":checked")) {
$('div.item1').addClass("red");
} else {
$('div.item1').removeClass("red");
}
});
$('input#blue').change(function(){
if($(this).is(":checked")) {
$('div.item1').addClass("blue");
} else {
$('div.item1').removeClass("blue");
}
});
});
私はこれを作成しました: http://jsfiddle.net/uJcB7/14/ どのように正しく行うべきですか?
- - - - - - 編集 - - - - - -
重力フォームを使用して選択ボックスを生成していますが、オプションの名前の後に "|0" が追加されています (理由はわかりません!)。
たとえば、「green」ではなく「green|0」です。"|0" はフィールドに隠されていますが、生成されたクラスは "green|0" です。
css クラスでその "|0" を削除する方法について何か考えはありますか?
また、選択ボックスの名前を生成しますが、名前要素を使用する代わりにクラスを使用することは可能ですか?
更新されたコードを見てください。