Php HTML<;选择>;默认选项
我知道以前有人问过这个问题,但我对此有一个尚未解决的担忧 如何获得服务器端脚本生成的默认值 例:Php HTML<;选择>;默认选项,php,html,html-select,server-side,Php,Html,Html Select,Server Side,我知道以前有人问过这个问题,但我对此有一个尚未解决的担忧 如何获得服务器端脚本生成的默认值 例: 工作日: 星期一 星期二 星期三 星期四 星期五 星期六 星期日 我知道您可以将selected属性与常规元素一起使用,但我在这里遇到了一个循环 有什么想法吗?你希望你的HTML最终看起来像这样-注意在之后选择的“Friday”默认选择Friday: <select name="weekday" class="right"> <option value="Monday">
工作日:
星期一
星期二
星期三
星期四
星期五
星期六
星期日
我知道您可以将selected属性与常规元素一起使用,但我在这里遇到了一个循环
有什么想法吗?你希望你的HTML最终看起来像这样-注意
在之后选择的“Friday”
默认选择Friday:
<select name="weekday" class="right">
<option value="Monday">Monday</option>
<option value="Tuesday">Tuesday</option>
<option value="Wednesday">Wednesday</option>
<option value="Thursday">Thursday</option>
<option value="Friday" selected>Friday</option>
<option value="Saturday">Saturday</option>
<option value="Sunday">Sunday</option>
</select>
我更倾向于在服务器端本身创建select/选项。同样是一个又快又脏的PHP示例:
<html>
<body>
<select name="weekday" class="right">
<?php
date_default_timezone_set('America/Chicago');
$dayOfWeek = strtolower(date('l'));
$days = array('Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday');
foreach ($days as $day)
{
echo sprintf("<option value=\"%s\" %s>%s</option>\n",
$day,
$dayOfWeek == strtolower($day) ? 'selected' : '',
$day
);
}
?>
</select>
</body>
</html>
抛出循环是什么意思?你是说你从循环中获取工作日吗?
<html>
<body>
<select name="weekday" class="right">
<option value="Monday" <?php echo setSelected('Monday'); ?>>Monday</option>
<option value="Tuesday" <?php echo setSelected('Tuesday'); ?>>Tuesday</option>
<option value="Wednesday" <?php echo setSelected('Wednesday'); ?>>Wednesday</option>
<option value="Thursday" <?php echo setSelected('Thursday'); ?>>Thursday</option>
<option value="Friday" <?php echo setSelected('Friday'); ?>>Friday</option>
<option value="Saturday" <?php echo setSelected('Saturday'); ?>>Saturday</option>
<option value="Sunday" <?php echo setSelected('Sunday'); ?>>Sunday</option>
</select>
</body>
</html>
<?php
function setSelected($day)
{
date_default_timezone_set('America/Chicago');
return strtolower($day) === strtolower(date('l')) ? ' selected' : '';
}
?>
<html>
<body>
<select name="weekday" class="right">
<?php
date_default_timezone_set('America/Chicago');
$dayOfWeek = strtolower(date('l'));
$days = array('Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday');
foreach ($days as $day)
{
echo sprintf("<option value=\"%s\" %s>%s</option>\n",
$day,
$dayOfWeek == strtolower($day) ? 'selected' : '',
$day
);
}
?>
</select>
</body>
</html>