Member 13347492 Ответов: 1

Сохранить значение списка выбора


У меня есть список выбора, основанный на запросе. Он публикует результаты на той же странице.

Однако даже после обновления страницы выбор в списке возвращается в начало списка, а не в то, что я выбрал.

Каков самый простой способ сохранить этот выбор в поле выбора?

Я видел примеры в интернете, но все они относятся к типизированным опциям, а не к списку запросов, и я не могу понять, как адаптировать код к списку запросов.

Я включил соответствующий код ниже.

Что я уже пробовал:

<form action="http://www.pabirds.org/joomla/index.php/birding/birds-of-pa" method="post" name="form1" target="_self" id="form1">
<label for="Species" class="MediumSerifText">Select Species (Alphabetical order):</label>
<select name="Species" id="Species" onchange="this.form.submit()">
<?php
do {  
?>
        <option value="<?php echo $row_rsSelectSpeciesAlpha['ID']?>"><?php echo $row_rsSelectSpeciesAlpha['CommonName']?></option>
        <?php
} while ($row_rsSelectSpeciesAlpha = mysql_fetch_assoc($rsSelectSpeciesAlpha));
  $rows = mysql_num_rows($rsSelectSpeciesAlpha);
  if($rows > 0) {
      mysql_data_seek($rsSelectSpeciesAlpha, 0);
	  $row_rsSelectSpeciesAlpha = mysql_fetch_assoc($rsSelectSpeciesAlpha);
  }
?>
</select>

</form>

Richard Deeming

Похоже, часть вашего кода проглотила система - никаких следов <select> или <option> метки везде.

Нажмите кнопку "улучшить вопрос" и снова добавьте блок кода. Убедитесь, что он завернут в <pre>...</pre> теги.

Наиболее вероятная причина проблемы заключается в том, что вы не устанавливаете то selected атрибут[^] о соответствующем <option>.

1 Ответов

Рейтинг:
1

W∴ Balboos, GHB

Элемент в списке выбора можно предварительно выбрать, установив значение (через DOM) на то значение, которое вы хотите показать. Если нет, вы получаете верхнюю часть списка.

Это звучит так, как будто вы обновляете страницу (или она не изменится)

Итак - когда вы выбираете элемент, получаете его значение (через DOM) и передаете его на свою страницу, а затем устанавливаете его. Как? Это зависит от того, как вы обновляете страницу - из формы? Тогда, если список находится в форме, у вас есть значение. Убедитесь, что у вашего списка выбора есть имя.

Теперь, если вы генерируете список с помощью php, при создании своих опций вы можете попытаться найти совпадение. В этом случае, если вы найдете совпадение, вставьте 'selected= "selected"в элемент option с соответствующим значением.

Все вышесказанное, конечно, основано на догадке о том, как вы это делаете.