В форме HTML мне нужно генерировать постепенно увеличивающиеся значения в опциях выпадающего тега select - PullRequest
1 голос
/ 09 сентября 2010

Вот что мне нужно написать для нескольких выпадающих меню:

<select>
    <option value="23">23</option>
    <option value="23.5">23.5</option>
    <option value="24">24</option>
    <option value="24.5">24.5</option>
    [etc...]
</select>

Необходимо увеличить на 0,5 для каждого параметра.

Часть с т.повторить процесс как 40+ раз.На странице также есть несколько вариантов выбора, значения которых начинаются и останавливаются под разными номерами.

Эти числа будут статическими и не изменятся после создания.Таким образом, значения и HTML-код нужно просто собрать один раз, и это хорошо.Сайт работает на PHP.

Я не хочу вручную кодировать весь этот код один параметр за другим!Я не уверен, что это самый простой способ сделать это.Regex?JS

Ответы [ 2 ]

1 голос
/ 09 сентября 2010
$total = 40;
$value = 23.00;

$HTML = '<select>';

for($i = 0; $i < $total; $i++)
{
    $HTML .= '<option value="'.$value.'">'.$value.'</option>';
    $value += 0.5;
}

$HTML .= '</select>';
0 голосов
/ 09 сентября 2010

Если вы просто хотите распечатать данные один раз, я бы выбрал такой язык, как Python. Вы можете генерировать их динамически во время выполнения с помощью JavaScript, если хотите, но имейте в виду, что это снизит функциональность для пользователей, которые отключают JS. В Python тогда:

for num in range(25, 50):
  print r'<option value="%d">%d</option>' % (num, num)
  print r'<option value="%d.5">%d.5</option' % (num, num)

Это должно дать вам столько, сколько вам нужно, и быть адаптируемым.

Кроме того, для этого стоит использовать более мощный язык сценариев (PHP, ASP, Ruby и т. Д.) На странице, чтобы делать подобные вещи, если это вообще возможно, а не создавать набор статических, жестко закодированных файлов , Это будет трудно поддерживать позже.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...