我想在下拉菜单列表中指定数字范围,如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>';