[英]Populate DropDown and Get Selected Value From Database
我有从数据库中选择值以填充下拉列表的代码。 但我的问题是,如果我将用户选择的值存储在另一个数据库中,我将如何将其拉回并做出所选的选择。
<select name="dropdown1" id="dropdown1">
<?php
for ($i = 0; $i < 5; $i++)
{
print '<option id="'.$options[$i]["ID"].'" value="'.$options[$i]["Value"].'">'.$options[$i]["Name"].'</option>'."\n";
}
?>
</select>
所以用户存储的值是红色的。 当它填充我的下拉列表时,我如何将选定的值设为红色?
谢谢e
<select name="dropdown1" id="dropdown1">
<?php
$selected = "red";
for ($i = 0; $i < 5; $i++)
{
if ($options[$i]['Value'] == $selected) {
print '<option selected="selected" id="'.$options[$i]["ID"].'" value="'.$options[$i]["Value"].'">'.$options[$i]["Name"].'</option>'."\n";
} else {
print '<option id="'.$options[$i]["ID"].'" value="'.$options[$i]["Value"].'">'.$options[$i]["Name"].'</option>'."\n";
}
}
?>
</select>
在每个元素上测试值。 如果选择了该值,则打印“selected”。
<select name="dropdown1" id="dropdown1">
<?php
$selected = 'red';// obviously replace with DB value.
for ($i = 0; $i < 5; $i++)
{
// start as normal
print '<option id="'.$options[$i]["ID"].'" value="'.$options[$i]["Value"].'"';
// if this one is selected, add 'selected' to the tag.
// NOTE: booleans in HTML do not need to have an attribute value.
// so selected="selected" is not necessary here.
if( $options[$i]["Value"] == $selected ) print ' selected';
// finish as normal
print '>'.$options[$i]["Name"].'</option>'."\n";
}
?>
</select>
附带说明:如果您使用 foreach,它将生成更小、更紧凑且通常更快的代码:
//this assumes that you want to iterate the whole options array
foreach( $options as $option )
{
print '<option id="'.$option["ID"].'" value="'.$option["Value"].'"';
if( $option["Value"] == $selected ) print ' selected';
print '>'.$option["Name"].'</option>'."\n";
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.