我有一个页面,用户可以在其中编辑他们的信息。用户输入信息的方式之一是下拉菜单。我已经有了值,我需要在下拉菜单中将该值设置为活动选项。我知道用一堆if语句做最直接的方式:
if ($classVal == "Freshman") {
echo "
<select name='class'>
<option selected>Freshman</option>
<option>Sophomore</option>
<option>Junior</option>
<option>Senior</option>
</select>
";
} else if ($classVal == "Sophomore") {
echo "
<select name='class'>
<option>Freshman</option>
<option selected>Sophomore</option>
<option>Junior</option>
<option>Senior</option>
</select> </p>
";
} else if ($classVal == "Junior") { ... }
这种方式对我有用,但我想知道是否有更好的方法来实现这一点。
答案 0 :(得分:5)
您可以像这样测试var inline:
echo "
<select name='class'>
<option ".($classVal == "Freshman" ? "selected" : "").">Freshman</option>
<option ".($classVal == "Sophomore" ? "selected" : "").">Sophomore</option>
<option ".($classVal == "Junior" ? "selected" : "").">Junior</option>
<option ".($classVal == "Senior" ? "selected" : "").">Senior</option>
</select>
";
答案 1 :(得分:1)
<?php
$options = array('Freshman','Sophomore','Junior','Senior');
?>
<select name='class'>
<?php foreach($options as $op):?>
<option<?php echo $classVal==$op?'selected':'';?>> <?php echo $op;?> </option>
<?php endforeach;?>
</select>