我试图以1 - 100显示下拉,听起来很简单,是的,我有点新......但我错过了什么?我可以让它显示50个不同的下拉列表,其中包含一个数字,其他50个数字显示为标签。
if (this > that) {
for ($i=1; $i<=100; $i++)
{
echo '<select name="numberCounter" id="numberCounter">
<option value="'.$i.';">'.$i.'</option>';
}
}
echo '</select>';
答案 0 :(得分:1)
您的代码应该与此类似:
if(this > that) {
echo '<select name="numberCounter" id="numberCounter">';
for ($i=1; $i<=100; $i++)
{
echo "<option value='{$i}'>{$i}</option>";
}
echo '</select>';
}
如果您注意到,select
元素的开头是在之外的循环,因此创建一个带有选项内部选项的元素。
我还在此代码中使用了所谓的Complex Expressions,它是大括号({}
)。这基本上是字符串连接,你只需要确保字符串本身被双引号括起来。您可以选择完全删除它们,但我相信它有助于提高可读性。例如,您可以将其设为echo "<option value='$i'>$i</option>";
您也可以将PHP中的HTML分开一点。这可能看起来有点麻烦,但如果您使用IDE,它确实会有所帮助,因为它仍然允许HTML语法高亮。
if(this > that) {
?>
<select name="numberCounter" id="numberCounter">
<?php
for ($i=1; $i<=100; $i++)
{
?>
<option value="<?=$i;?>"><?=$i;?></option>
<?php
}
?>
</select>
<?php
}
在这段代码中,我使用PHP echo short语法(<?=$variable;?>
),只有在使用PHP版本&gt; = 5.4时才能使用它。如果您使用的版本低于此版本,则应该考虑更新,但如果不能,则可以使用常规语法(<?php echo $variable; ?>
)。
答案 1 :(得分:0)
你必须注意使用引号等,它们会让人感到困惑。我修改了尽可能少的代码以使其工作。从这里开始,如果您想要编辑更多内容,这是您个人的偏好。
if (this > that) { ?>
<select name="numberCounter" id="numberCounter">
<?php
for ($i=1; $i<=100; $i++)
{ ?>
<option value="<?php echo $i ?>"><?php echo $i ?></option>;
<?php }
} ?>
</select>