0
phpのスイッチを使って、私はデータベースからあらかじめ選択された値に基づいて、コンボボックスのオプションを隠したいと思っています。私は、PHPのswitch文を介してこれを行うように言われ、ここで私が得たものですされてきた。phpでコンボボックスのオプションを隠すことは不可能ですか?
<tr>
<td>
<select name="cbostatus" id="cbostatus">
<option selected "" ></option>
<option value="1" <?php if ($row['task_status']=='Planned') echo 'selected="selected"';?>>Planned</option>
<option value="2" <?php if ($row['task_status']=='Started') echo 'selected="selected"';?>>Started</option>
<option value="3" <?php if ($row['task_status']=='Available') echo 'selected="selected"';?>>Available</option>
<option value="4" <?php if ($row['task_status']=='Impeded') echo 'selected="selected"';?>>Impeded</option>
<option value="5" <?php if ($row['task_status']=='Concluded') echo 'selected="selected"';?>>Finished</option>
</select>
</td>
</tr>
コンボだった、とここでは、スイッチのこと:
<?php
switch ($row['task_status'])
{
case 'Planned':
echo '
<script>
cbostatus.options[4].style.display = "none";
cbostatus.options[5].style.display = "none";
cbostatus.options[3].style.display = "none";
</script>
';
break;
case 'Available':
echo '
<script>
cbostatus.options[1].style.display = "none";
cbostatus.options[4].style.display = "none";
cbostatus.options[5].style.display = "none";
</script>
';
break;
case 'Started':
echo '
<script>
cbostatus.options[1].style.display = "none";
</script>
';
break;
case 'Impeded':
echo '
<script>
cbostatus.options[1].style.display = "none";
</script>
';
break;
case 'Concluded':
echo '
<script>
cbostatus.options[1].style.display = "none";
</script>
';
break;
}
?>
しかし、それは動作しません。 。どうして?それは不可能ですか?私は3日間これをやろうとしていました。誰でも知っている?
/このJSはどうやって走っていますか?実際のフォーム要素の前にページに置くと、ページのその部分がまだ解析されていないため、jsは何も検索しません。 –
ああ神様、ありがとう、ありがとう、どうもありがとうございました。ありがとうございます。 – RazorFinger
あなたは以前に 'cbostatus'を割り当てましたか? ( 'document.getElementById' f.e.) – Jeff