function getDates(month) { var minusDays = 0; var maxDays = 31;
// håber jeg husker rigtig med antal dage i hver måned;o) if(month == "februar") minusDays = 2; if(month == "april") minusDays = 1; if(month == "juni") minusDays = 1; if(month == "september") minusDays = 1; if(month == "november") minusDays = 1; maxDays = maxDays - minusDays; var daySelect = document.getElementById('Days');
daySelect.options.length = 0;
for(var days = 1; days < maxDays+1; days++) { daySelect.options[daySelect.options.length] = new Option(days, daySelect); }
}
</SCRIPT> </HEAD> <BODY onload="getDates('januar');"> Vælge måned: <select id="Months" onchange="getDates(this.value);"> <option value ="januar">Januar</option> <option value ="februar">Februar</option> <option value ="marts">Marts</option> <option value ="april">April</option> <option value ="maj">Maj</option> <option value ="juni">Juni</option> <option value ="juli">Juli</option> <option value ="august">August</option> <option value ="september">September</option> <option value ="oktober">Oktober</option> <option value ="november">November</option> <option value ="december">December</option> </select> Vælge dag: <select id="Days"></select>
-- jeg ville sikre at en ændring skete med en null-value som start, og så er det ikke specielt svært at gennemskue skudår, når den næste afvigelse kommer i år 2100 ...
-- men hvis det virker allerede skal det jo ikke laves om !-)
Jeg har lige lavet koden til denne tråd, så jeg har ikke rigtig testet det igennem, men det så da ud til, at fungere:) Månederne fik de dage de skulle have i den anden select boks.
Dette burde dække skudår til længe efter, du er død - forudsat, der er tale om det til enhver tid aktuelle årstal ;o) if(month == "februar") minusDays = new Date().getFullYear()%4==0 ? 2 : 3;
Ellers må du yderligere fodre funktionen med et årstal: function getDates(month, year) {
Ser godt ud. Hvordan får man det så sådan at den måned man er i er den der er valgt default? Går næsten ud fra at det har noget med <BODY onload="getDates('januar');"> at gøre.
jeg har ikke tilføjet det med skudår, men det har du fået bud på hvordan kan gøres;)
her er vælger den måneden man er i.
<HTML> <HEAD> <SCRIPT language=Javascript>
function getDates(month) { var minusDays = 0; var maxDays = 31; if(month == "currentMonth"){ var currentMonth = new Date().getMonth(); var monthSelect = document.getElementById('Months'); monthSelect.selectedIndex = currentMonth; month = monthSelect.value; } // håber jeg husker rigtig med antal dage i hver måned;o) if(month == "februar") minusDays = 2; if(month == "april") minusDays = 1; if(month == "juni") minusDays = 1; if(month == "september") minusDays = 1; if(month == "november") minusDays = 1; maxDays = maxDays - minusDays; var daySelect = document.getElementById('Days');
daySelect.options.length = 0;
for(var days = 1; days < maxDays+1; days++) { daySelect.options[daySelect.options.length] = new Option(days, daySelect); }
}
</SCRIPT> </HEAD> <BODY onload="getDates('currentMonth');"> Vælge måned: <select id="Months" onchange="getDates(this.value);"> <option value ="januar">Januar</option> <option value ="februar">Februar</option> <option value ="marts">Marts</option> <option value ="april">April</option> <option value ="maj">Maj</option> <option value ="juni">Juni</option> <option value ="juli">Juli</option> <option value ="august">August</option> <option value ="september">September</option> <option value ="oktober">Oktober</option> <option value ="november">November</option> <option value ="december">December</option> </select> Vælge dag: <select id="Days"></select>
function getDates(month) { var minusDays = 0; var maxDays = 31; var preselectDay = false; if(month == "currentMonth"){ preselectDay = true; var currentMonth = new Date().getMonth(); var monthSelect = document.getElementById('Months'); monthSelect.selectedIndex = currentMonth; month = monthSelect.value; } // håber jeg husker rigtig med antal dage i hver måned;o) if(month == "februar") minusDays = 2; if(month == "april") minusDays = 1; if(month == "juni") minusDays = 1; if(month == "september") minusDays = 1; if(month == "november") minusDays = 1; maxDays = maxDays - minusDays; var daySelect = document.getElementById('Days');
daySelect.options.length = 0;
for(var days = 1; days < maxDays+1; days++) { daySelect.options[daySelect.options.length] = new Option(days, daySelect); } if(preselectDay){ daySelect.selectedIndex = new Date().getDate()-1; }
}
</SCRIPT> </HEAD> <BODY onload="getDates('currentMonth');"> Vælge måned: <select id="Months" onchange="getDates(this.value);"> <option value ="januar">Januar</option> <option value ="februar">Februar</option> <option value ="marts">Marts</option> <option value ="april">April</option> <option value ="maj">Maj</option> <option value ="juni">Juni</option> <option value ="juli">Juli</option> <option value ="august">August</option> <option value ="september">September</option> <option value ="oktober">Oktober</option> <option value ="november">November</option> <option value ="december">December</option> </select> Vælge dag: <select id="Days"></select>
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.