HTML表单下拉菜单指定数字范围


HTML form dropdown menu specify number range

我想在下拉菜单列表中指定数字范围,如1-24从例子中我目前正在做以下

<select name="hour">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
...
...
<option value="24">24</option>
</select>

是否有任何方法我们可以说使用1-24,它动态创建下拉菜单,我想我们需要使用Javascript,但我不知道如何编码它们?

你不需要Javascript,你可以使用PHP for循环:

<select name="hour">
    <?php for ($i = 1; $i <= 24; $i++) : ?>
        <option value="<?php echo $i; ?>"><?php echo $i; ?></option>
    <?php endfor; ?>
</select>

这个答案现在可能有用了。HTML5让它变得更简单。我们不需要javascript来做同样的事情。大多数现代浏览器都支持。无法检查旧的IE版本。

<label for="hour">Hour:</label>
<input type="number" id="hour" min="1" max="24" />

参考:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/number

如果您只希望使用Javascript,您可以这样做:

for(var i=1; i<=24; i++){
    var select = document.getElementById("hours");
    var option = document.createElement("OPTION");
    select.options.add(option);
    option.text = i;
    option.value = i;
}

下面是一个jsFiddle的例子:jsFiddle

甚至我也明白了你的例子:

<?php
echo "<select>";
for ($h = 1; $h <= 24; $h++) echo "<option value='$h'>$h</option>";
echo "</select>";
?>

Use PHP Range -创建一个包含一系列元素的数组

echo '<select name="hour">';
foreach (range(1,24) as $number) {
        echo '<option value='.$number.'>'.$number.'</option>';
}
echo '</select>';