私のページには、デフォルト値が(空)のドロップダウン選択ボックスがあります。ユーザーがエントリを選択すると、そのエントリ タイプに適したフォームが表示されます。
いくつかの問題..
- コードは DRY ではなく、必要以上に冗長に見えるため、保守や拡張が容易ではありません。
- ユーザーが何かを選択し、フォームに入力し、次のページに移動して [戻る] ボタンを押すと、選択フィールドはユーザーの選択によって事前に選択されますが、
.change()
イベントが発生していないため、フォーム ボックスは表示されません。<option>
フォーラムを元に戻すには、別の を選択してから元の選択に戻る必要があります。
コードは次のとおりです。
<script type="text/javascript">
$(document).ready(function(){
$('#select_type').change(function () {
$('fieldset').css('display','none'); # hide all the forms on the page
var selectval = $('#select_type').val();
if (selectval == 'instance')
{
$('#instance').toggle();
}
if (selectval == 'mob')
{
$('#mob').toggle();
}
if (selectval == 'dailyquest')
{
$('#dailyquest').toggle();
}
if (selectval == 'repeatablequest')
{
$('#repeatablequest').toggle();
}
if (selectval == 'zonequest')
{
$('#zonequest').toggle();
}
if (selectval == 'reward')
{
$('#reward').toggle();
}
});
});
</script>
SO の JS 達人を助けてください!