在表单自提交中选择以前选择的下拉值

时间:2017-11-20 23:19:41

标签: php html

我有一份附有表格的'今年'下拉列表。然后我选择其中一年,比如2016年。当我点击提交按钮时,我希望重新加载页面,而下拉列表中的值保持在2016年(之前选择的那个)。

我该怎么做?这是我的表格:

<form class="form" method="POST" id="myID" name="myName">
   <label id="year" name="year">YEARS</label>
      <select name="year" id="year" class="form-control">
        <option value="0" selected disabled="">CHOOSE YEAR</option>
          <?php foreach($year as $rows){?>
          <option value="<?php echo $rows->years?>"><?php echo $rows->years?>
          </option>
          <?php }?>
      </select>
    <button id="filter_button" style="margin-top: 26px" name="filter_button" 
     type="submit" class="for btn btn-info">Show</button> 
</form>

1 个答案:

答案 0 :(得分:0)

您应该使用$_POST中的值将所选内容设置为默认值。以下是更新后的代码:

<form class="form" method="POST" id="myID" name="myName">
   <label id="year" name="year">YEARS</label>
      <select name="year" id="year" class="form-control">
        <option value="0" selected disabled="">CHOOSE YEAR</option>
          <?php foreach($year as $rows){
             $isSelected = (isset($_POST['year']) && ($_POST['year'] == $rows->years)) ? 'selected' : '';
          ?>
          <option <?php echo $isSelected; ?> value="<?php echo $rows->years?>"><?php echo $rows->years?>
          </option>
          <?php }?>
      </select>
    <button id="filter_button" style="margin-top: 26px" name="filter_button" 
     type="submit" class="for btn btn-info">Show</button> 
</form>