你可以这样做:
<select name="dropdown">
<option value="1" <?php echo isset($_POST["dropdown"]) && $_POST["dropdown"] == "1" ? "selected"; ?> >Option 1</option>
<option value="2" <?php echo isset($_POST["dropdown"]) && $_POST["dropdown"] == "2" ? "selected"; ?> >Option 2</option>
<option value="3" <?php echo isset($_POST["dropdown"]) && $_POST["dropdown"] == "3" ? "selected"; ?> >Option 3</option>
</select>
您可以参考PHP 如何保持下拉列表中的选定选项以在提交时保持选中状态?了解更多信息
编辑:我刚刚读到您正在使用 Smarty,在这种情况下您可以使用:
<select name="dropdown">
<option value="1" {if !empty($dropdown) && $dropdown == "1"}selected{/if}>Option 1</option>
<option value="2" {if !empty($dropdown) && $dropdown == "2"}selected{/if}>Option 2</option>
<option value="3" {if !empty($dropdown) && $dropdown == "3"}selected{/if}>Option 3</option>
</select>
在你的 PHP 中:
global $smarty;
if(isset($_POST["dropdown"])){
//validation
$smarty->assign("dropdown", $_POST["dropdown"]);
}