两个select
代码 - months
和years
:
<select class='sx' id ='sxa'>
<?php
$months = array('JAN', 'FEB', 'MAR', 'APR', 'MAY', 'JUN', 'JUL', 'AUG', 'SEP', 'OCT', 'NOV', 'DEC');
for($x = 0; $x < count($months); $x++) {
$i = sprintf('%02d', $x+1);
echo "<option value=" . $i . ">" . $months[$x] . "</option>\n";
}
?>
</select>
<select class='sx' id ='sxb'>
<?php
$current = date('Y');
for ($x = 2016; $x <= $current; $x++) {echo "<option>$x</option>";}
?>
</select>
有没有办法在当前月份和年份插入属性selected
?
多年来,这始终是最后一种选择,而在几个月内它可以在任何指数上。
答案 0 :(得分:1)
您可以检查当前月份是否等于loop index + 1
。
$currentMonth = date('n');
然后在你的循环中:
<?php for($x=0; $x<count($months); $x++): ?>
<?php $i = sprintf('%02d', $x + 1); ?>
<option value="<?php echo $i; ?>"<?php if($x + 1 == $currentMonth) echo ' selected'; ?>>
<?php echo $months[$x]; ?>
</option>
<?php endfor; ?>
或者如果你想以自己的方式回应它:
<?php
for($x=0; $x<count($months); $x++){
$i = sprintf('%02d', $x + 1);
echo '<option value="' . $i . '"' . ($x + 1 == $currentMonth ? ' selected' : '') . '>' . $months[$x] . '</option>';
}
?>
答案 1 :(得分:1)
这个怎么样?没有javascript。
$months = array('JAN', 'FEB', 'MAR', 'APR', 'MAY', 'JUN', 'JUL', 'AUG', 'SEP', 'OCT', 'NOV', 'DEC');
$match = 'SEP';
$buffer = "<select name='fieldname'>";
foreach($months as $value){
$buffer .= "<option value=\"$value\"";
if($value == $match){ $buffer .= " selected"; }
$buffer .= ">$value</option>";
}
$buffer .= "</select>";
echo $buffer;