select 要素の選択結果で別の select 要素の選択肢を絞り込む jQuery プラグイン "Select Narrowing Plugin"が便利!
js
<script type="text/javascript"> $(function () { $("#category").narrows("#food"); // #category は #food を絞り込む }); </script>
親カテゴリのid="category"で
子カテゴリのid="food"を絞り込んでいます。
html
<!-- 親select:食品カテゴリ --> <select id="category"> <option value="">-- Food Category --</option> <option value="meat">Meat</option> <option value="vegetable">Vegetable</option> <option value="fruit">Fruit</option> </select> <!-- 子select:食品 --> <select id="food"> <option value="">-- Food --</option> <option value="beef" data-category="meat">Beef</option> <option value="pork" data-category="meat">Pork</option> <option value="chicken" data-category="meat">Chicken</option> <option value="lettuce" data-category="vegetable">Lettuce</option> <option value="carrot" data-category="vegetable">Carrot</option> <option value="tomato" data-category="vegetable">Tomato</option> <option value="apple" data-category="fruit">Apple</option> <option value="banana" data-category="fruit">Banana</option> <option value="melon" data-category="fruit">Melon</option> </select>
親カテゴリのid="category"で選択されたvalue値で
子のdata-category(data-親のID)と一致するものを絞り込み表示しています。
参考サイト: