Comment charger html <select> avec des valeurs lors du chargement de la page à l'aide de javascript en PHP?

Je vais avoir des problème sur la façon de charger le code HTML <select> avec des valeurs à chaque fois que la page est chargée pour la première fois ou lors de l'actualisation.

Je suis en train d'essayer de créer un date_select avec 3 menus déroulants qui comprend année, le mois et le jour dans le mois-menu ou menu est changé il va automatiquement ajuster le nombre de jours.

Par exemple, lorsque j'ai choisi le mois de Mars, les jours seront 31 ou avril, les journées vont être de 30.

Mon problème est que lorsque la page est chargée pour la première fois le jour-menu est vide. J'ai essayé onload sur le <select> mais il ne fonctionne pas. Je suis un débutant en programmation, donc j'ai de la difficulté même de simples exercices de ce genre. S'il vous plaît aider.

date_select.php

<script type="text/javascript" >
function loadDays() {
var year = parseInt(document.getElementById('years').value);
var month = document.getElementById('months').value;
var months = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");
var days = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
if ((year % 4) == 0)  days[1] = 29;
var days_select = document.getElementById('days');
days_select.options.length = 0;
for(i in months) {
if (month == months[i]) {
for(var j = 1; j <= days[i]; j++ ) days_select.options[days_select.options.length] = new Option(j, j);
break;
}
}
}
</script>
<span style="display: table; ">
<span style="display: table-cell; ">
<select id="years" onchange="loadDays();">
<?php 
for($year = 1900; $year <= 2100; $year++ ) {
if ($year == date('Y')) echo "<option value='$year' selected=''>" . $year . "</option>";
else echo "<option value='$year'>" . $year . "</option>";
}
?>
</select>
</span>
&nbsp;
<span style="display: table-cell; ">
<select id="months" onchange="loadDays();">
<?php 
$months = array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" );
foreach($months as $month){
if ($month == date('M')) echo "<option value='$month' selected=''> " . $month . "</option>";
else echo "<option value='$month'> " . $month . "</option>";
}
?>
</select>
</span>
&nbsp;
<span style="display: table-cell; ">
<select id="days" onload="loadDays();">
</select>
</span>
</span>

OriginalL'auteur Newbie Coder | 2011-05-04