我想创建一个<select>仅包含数字,1、2、3等的非常简单的框。所以我非常想
<select>
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
</select>
Run Code Online (Sandbox Code Playgroud)
但是,我想使用PHP生成选项,而不是手动创建所有选项。
我该怎么做呢?
您可以使用此:
<select>
<?php
define('MAX_OPTIONS', 6);
for($optionIndex=1; $optionIndex <= MAX_OPTIONS; $optionIndex++){
echo '<option>' . $optionIndex . '</option>';
}
?>
</select>
Run Code Online (Sandbox Code Playgroud)
请注意,for的open和close标记<select>是直接输出,不是PHP代码,因此是PHP标记。
您也可以只通过PHP将其全部打印出来:
<?php
define('MAX_OPTIONS', 6);
echo '<select>';
for($optionIndex=1; $optionIndex <= MAX_OPTIONS; $optionIndex++){
echo '<option>' . $optionIndex . '</option>';
}
echo '</select>';
?>
Run Code Online (Sandbox Code Playgroud)
暗示
最后,只需朝着更加结构化的编程迈出一小步,就可以创建一个函数:
<?php
function createSelectBox($optionCount){
$out = '<select>';
for($idx=1; $idx <= $optionCount; $idx++){
$out .= '<option>' . $idx . '</option>';
}
$out .= '</select>';
return $out;
}
?>
Run Code Online (Sandbox Code Playgroud)
然后从PHP(!!)内部调用它,如下所示:
<?php
echo createSelectBox(6);
?>
Run Code Online (Sandbox Code Playgroud)
由于您生成的HTML代码看起来不错并且可以正常运行,因此它将无法用于任何实际目的,因为如果没有为<option>标签提供value属性(该属性应包含代表该选项的值),则选择框将无法工作。
| 归档时间: |
|
| 查看次数: |
4839 次 |
| 最近记录: |