在PHP提交之后保留一个选择选项


Preserving a select option after PHP submit

我有一个html选择框与国家列表。当我选择一个时,它会毫无问题地发送到PHP方法,但是选择框会重置到顶部。如何保留用户在这里选择的值?我的代码在这里(为简洁起见,我去掉了大多数其他国家)

<html>
    <body>
        <form action="" method="post">
            <select name="countryCd"  onChange="submit();return false;">
                <option value="AFG">Afghanistan</option>
                <option value="ALA">Aland Islands</option>
                <option value="ALB">Albania</option>
            </select>
        </form>
    <?php echo $_POST["countryCd"]; ?>
    </body>
</html>

你可能会发现这个问题很有用:

保存提交后的表单值

基本上你可以这样写:

<select name="countryCD">
      <option value="AFG" 
         <?php if(isset($_POST['countryCD']) && $_POST['countryCD'] == 'AFG') 
         echo 'selected= "selected"';
          ?>
      >Afghanistan</option>
</select>

尝试:

<select name="countryCd"  onChange="submit();return false;">
    <option value="AFG" <?= $_POST['countyCd'] == AFG ? 'selected' : '' ?>>Afghanistan</option>
    <option value="ALA" <?= $_POST['countyCd'] == ALA ? 'selected' : '' ?>>Aland Islands</option>
    <option value="ALB" <?= $_POST['countyCd'] == ALB ? 'selected' : '' ?>>Albania</option>
</select>

将以下内容添加到每个OPTION中。您需要为每个更改这个值

<?php if($_POST['countryCd'] == '*this value*'){ php?>selected<?php } php?>