select 中的默认值

Default Value in a select

这适用于使用 PDO 进行数据库绑定的 PHP 应用程序。我正在处理一个编辑表单,除了下拉菜单之外,我目前所做的一切都完美无缺。我似乎无法让它显示我正在编辑的设备的当前值。它只显示一个空行。任何建议将不胜感激。

<select name='connectedTerminal' id='connectedTerminal'>
<option value='0'>Select Terminal</option>
<option value='$row[connectedTerminal]' selected='selected' text='$row[connectedTerminal]'></option>
$options_terminal;
</select> 

使用if条件

<select name='connectedTerminal' id='connectedTerminal'>
<option value='0'>Select Terminal</option>
<option <?php if($row[connectedTerminal] == '1') echo "selected " ?> value='1'>$row[connectedTerminal]</option>
<option <?php if($row[connectedTerminal] == '2') echo "selected " ?> value='2'>$row[connectedTerminal]</option>
$options_terminal; // what it is for?
</select> 

要为 select 元素显示的文本位于 <option> 标记之间,与您已经为 "Select Terminal"

显示的文本相同
<select name='connectedTerminal' id='connectedTerminal'>
<option value='0'>Select Terminal</option>
<option value='$row[connectedTerminal]' selected='selected'>$row[connectedTerminal]</option>
$options_terminal;
</select>

要设置默认值,请使用 selected="selected"

<select name='connectedTerminal' id='connectedTerminal'>
  <option selected="selected" value='0'>Select Terminal</option> 
  <option value="<?php echo $row[connectedTerminal]; ?>"><?php echo $row[connectedTerminal];?></option>
</select> 

试试这个

<select name='connectedTerminal' id='connectedTerminal'>
<option value='0'>Select Terminal</option>
<option value='<?php echo $row[connectedTerminal] ;?>' selected='selected' text='<?php echo $row[connectedTerminal];?>'><?php echo $options_terminal; ?></option>
</select> 

您正在尝试将 PHP 变量输出到 html 中。

假设您有一组终端

$terminals = array();
$terminals[1] = 'one';
$terminals[2] = 'two';
$terminals[3] = 'three';
$terminals[4] = 'four';
$terminals[5] = 'five';

您当前正在修改 ID 为 terminal 4 的记录,变量为 $terminal_id

<select name='connectedTerminal' id='connectedTerminal'>
<option value='0'>Select Terminal</option>
<?php
if (! empty($terminals)) {
  foreach ($terminals as $tid => $tval) {
    $selected = ($tid == $terminal_id) ? 'selected="selected"' : '';
?>
<option value="<?php echo $tid;?>" <?php echo $selected;?>><?php echo $tval;?></option>
<?php
  }
}
</select>