如何添加自动增量编号来选择标签?

时间:2014-02-15 09:13:23

标签: php html

$x = date("");

function add_nol($number,$add_nol)
{
   while (strlen($number)<$add_nol)
   {
      $number = "0".$number;
   }

   return $number;
}

for($y=10;$y<=50;$y++)
{
   echo "<select name='id'>";
   echo "<option value='". $x."".add_nol($y,3)."'>" . $x."".add_nol($y,3) ."</option>";
   echo "</select>";
}

我想将自动增量数字添加到select标签中,但我会从上面的代码中获取每个数字的下拉列表。如何解决此错误?

2 个答案:

答案 0 :(得分:1)

要记住两件事:

  • <select>元素用于创建下拉列表。
  • <select>元素中的<option>代码定义了列表中的可用选项。

使用您当前的代码,生成的HTML标记与此类似:

<select name='id'>
    <option value='010'>010</option>
</select>
<select name='id'>
    <option value='011'>011</option>
</select>
...

这是不正确的。您正在为每个循环迭代创建单独的下拉列表。您只需要一个<select>标记 - 它们应该在循环之外。

echo "<select name='id'>";
for($y=10;$y<=50;$y++)
{
    echo "<option value='". $x."".add_nol($y,3)."'>" . $x."".add_nol($y,3) ."</option>";
}
echo "</select>";

Demo

答案 1 :(得分:0)

您在循环内重复创建select标记,即创建选择框而不是选项标记。将for循环编辑为:

echo "<select name='id'>";
for($y=10;$y<=50;$y++){       
    echo "<option value='". $x."".add_nol($y,3)."'>" . $x."".add_nol($y,3) ."</option>";      
}
echo "</select>";