我有一个下拉框,选项有true或false。如果选择为true,我希望显示所选图片。如果选择false,我想要显示不同的图片
到目前为止,这是我的代码:
<form>
<select name="Picture">
<option value= <?php $Test = True ?>"True">True</option>
<option value=<?php $Test = False ?>"False">False</option>
<?php
if ($Test == "True")
echo "<img src = '../Images/Worked.jpg'>";
else
echo "<img src = '../Images/DidntWork.jpg'>";
?>
</select>
</form>
我似乎得到的只是下拉菜单,但没有图像。此外,我不确定真/假选择器是否正确。
答案 0 :(得分:3)
这里有一些问题。
首先,<?php $Test = True ?>
。此设置 $Test
。你需要进行==
比较(就像你以后一样)。
其次,不能将<img>
标记作为<select>
的子标记。您需要将它们放在<select>
之外。
第三,您使用selected
属性标记应选择哪个<option>
。
<form>
<select name="Picture">
<option <?=$Test == "True" ? 'selected' : ''?> value="True">True</option>
<option <?=$Test == "False" ? 'selected' : ''?> value="False">False</option>
</select>
<?php
if ($Test == "True"){
echo "<img src = \"../Images/Worked.jpg\">";
}
else {
echo "<img src = \"../Images/DidntWork.jpg\">";
}
?>
</form>
注意:这只会在加载页面时显示图像。如果您希望在更改<select>
时更改它,则需要使用JavaScript(或在保存值后重新加载页面)。