Bunu yapabileceği birkaç farklı yolu vardır. En basit bir kaç ayrı kümelerinin, alanlar, tek bir grup ihtiva eden, her biri sahip olmaktır. Sonra, jQuery, seçme-menünün değerine bağlıdır gösterebilir / bu fieldset gizlemek, örneğin
<fieldset id="f1">
<input name="something1" />
<input name="something2" />
<input name="something3" />
</fieldset>
<fieldset id="f2">
<input name="something4" />
<input name="something5" />
<input name="something6" />
</fieldset>
<select name="fieldset-choice">
<option value="f1">Fieldset 1</option>
<option value="f2">Fieldset 2</option>
</select>
<script type="text/javascript">
jQuery('select[name=fieldset-choice]').change(function(){
var fieldsetName = $(this).val();
$('fieldset').hide().filter('#' + fieldsetName).show();
});
// We need to hide all fieldsets except the first:
$('fieldset').hide().filter('#f1').show();
</script>
Note: Yukarıdaki tekniği dinamik olarak tüm farklı fieldsets isimleri ile select menü oluşturmak isteyebilirsiniz tamamen mütevazi olmak için.
Alternatif olarak her alanlar anlamlı bir önek ile isim öneki ve o niteliğine göre / göstermek gizlemek:
<input name="group1-name1" />
<input name="group1-name2" />
<input name="group2-name3" />
<input name="group2-name4" />
<input name="group2-name5" />
<select name="field-choice">
<option value="group1">Group 1</option>
<option value="group2">Group 2</option>
</select>
<script type="text/javascript">
jQuery('select[name=field-choice]').change(function(){
var groupName = $(this).val();
$('input').hide().filter('[name^=' + groupName + ']').show();
});
// We need to hide all fields except those of the first group:
$('input').hide().filter('[name^=group1]').show();
</script>