我有这种困境,但我似乎无法绕过它。
我有这样的表格,我写的,到目前为止工作得很好,但我会这样做,当时 我在选择标记中选择一个月份,其属性名称为" month"它会自动显示相应的天数范围 1到选择标记中该月份的天数,属性名称为" day"就像我的代码中的monthDays数组中定义的一样。
这是最好的方法,因为我不想使用javaScript,因为我不太擅长它,我纯粹想把它保存在HTML和PHP中 这是我的代码:
<?php
$startYear = 1970;
$years = (int)date('Y') - $startYear;
$monthDays = array(
"January" => 31, "February" => 28, "March" => 31, "April" => 30,
"May" => 31, "June" => 30, "July" => 31, "August" => 31,
"September" => 30, "October" => 31, "November" => 30, "December" => 31
);
?>
<form action="" method="post">
<table>
<tr>
<td><label for="dob">Date of birth</label></td>
<td>
<?php
$months = array_keys($monthDays);
$days = array_values($monthDays);
?>
<select name="month">
<?php
foreach($months as $key => $month) {
$x = $key + 1;
echo "<option value=\"$x\">$month</option>";
}
?>
</select>
<select name="day">
<?php
for($i = 0; $i < 31; $i++) {
$x = $i + 1;
echo "<option value=\"$x\">$x</option>";
}
?>
</select>
<select name="year">
<?php
for($i = 0; $i <= $years; $i++) {
$selectedYear = $startYear + $i;
echo "<option value=\"{$selectedYear}\">{$selectedYear}</option>\n";
}
?>
</select>
</td>
</tr>
<tr>
<td></td>
<td><input type="submit" name="submit" value="Submit"></td>
</tr>
</table>
</form>
提前感谢您的帮助。