我有一个带有四个选项的下拉表单项。
<p>Priority:
<select required name='"priority'">
<option default value='"1'">1 - 10 days</option>
<option value='"2'">2 - 5 days</option>
<option value='"3'">3 - 48 hours</option>
<option value='"4'">4 - 24 hours</option>
</select>
</p>
http://jsfiddle.net/2nmxN/这些值已经以1,2,3,4的形式存储在SQL数据库中。我正在工作的页面是各种各样的编辑页面,所以我想有任何值设置在数据库上被下拉选择,所以用户不必在提交时重新选择值。我如何让它找到值并根据设置的内容选择正确的选项?对于这样的文本字段,我没有问题:
echo "<p>Cost: <input required type='"text'" name='"cost'" value='"".$cost."'">";
我必须为每个值(if ($priority == 1) {...})
等做四个不同的if语句吗?
如果选项存储在关联数组中,您可以这样写:
foreach ($options as $value => $label) {
echo '<option value="', $value, '"', ($dbValue == $value ? ' selected="selected"' : ''), '>', $label, '</option>';
}
您不必为每个值执行四个不同的if语句。您必须执行四个if语句,每个值一个。
foreach ($options as $value => $label)
{
if(isset($_POST['priority']) && $_POST['priority']==$value)
{
$selected = 'selected="selected"';
}
else
{
$selected='';
}
echo '<option value="'. $value. '" '.$selected.'>'. $label. '</option>';
}