php生成的选项默认选中

时间:2011-06-05 15:39:55

标签: php forms option selected

我可能再次对自己的错误视而不见,但为什么2011年不成为默认的选定年份? ( - 用于调试,它们显示if语句正常工作。)

for($year=1900;$year<=2050;$year++) {
 if ($year==date("Y"))
   echo "<option value='".$year."' selected='selected'>--".$year."</option>";
 else
   echo "<option value='".$year."'>".$year."</option>";
}

所选='已选中'应该正常工作。 (link)所以它是一个愚蠢的错误(我真的没有看到一个)或者来自php的一些影响..

更新: 发现问题.. ftp没有正确覆盖文件。现在它有效。感谢快速的帮助,当这些事情发生时,我总是开始怀疑自己的理智。 (不能发送这个作为答案,因为我有一个低代表)

3 个答案:

答案 0 :(得分:1)

PHP对浏览器的行为没有影响,所以如果它不起作用,那么HTML输出中就是一个愚蠢的错误。 ;)

最好的事情是检查selected变体是否实际输出。可能是比较评估为false,所以它总是第二行。一点点调试应该快速指出错误。检查浏览器中的输出或var_dump $ year和date('Y')的值,看看它们是否返回了您的期望。

乍一看,我发现这里没有错误。你有任何可能影响选择的Javascript吗?

答案 1 :(得分:1)

CTRL + SHIFT + R如果你使用firefox。 我经常遇到这个问题.. 它应该只是缓存。

顺便说一句:你应该使用双引号来表示html属性。这更“平常”。 :)

答案 2 :(得分:0)

您在检查生成的HTML吗?也许这段代码效果很好(似乎确实如此),但问题出在select或者其他地方。