首页 > 解决方案 > 检查 $_POST 中先前提交的值并替换默认选定项

问题描述

我正在努力使下拉列表在 wordpress 和 PHP 中工作,其中包括一个默认选项,然后是一个不同区域的列表。

我想做的是:

  1. 最初将我的默认选项设置为选中。
  2. 如果表单已提交,则将选定属性添加到选定项,并从默认选项中删除选定属性。
  3. 重新加载页面时将所选选项重置为默认值。

我想出了下面的代码,但到目前为止唯一有效的是之前选择的选项在提交后被保留。

<select name="by_area">
    <option value="default" disabled="" <?php if (!isset($_POST['by_area'])) { echo "selected";} ?>>select option</option>
    <?php foreach($categories as $value) :?>
      <option
        value="<?php echo $value->slug; ?>" 
        <?php echo (isset($_POST['by_area']) && $_POST['by_area'] === $value->slug ) ? 'selected' : ''; ?>><?php echo $value->name; ?>
      </option>
    <?php endforeach; ?>
</select>

标签: phpwordpresspostdropdown

解决方案


推荐阅读