Datumväljare
Exempel
Script
<script type="text/javascript">
var dateSelect={
yearFieldName:"year",
monthFieldName:"month",
dateFieldName:"date",
date:new Date(),
updateDate:function(obj){
obj[this.dateFieldName].length=0;
for(var i=1;i<=new Date(obj[this.yearFieldName][obj[this.yearFieldName].selectedIndex].value,obj[this.monthFieldName].selectedIndex+1,0).getDate();i++){
obj[this.dateFieldName][i-1]=new Option(((i<10)?"0":"")+i,((i<10)?"0":"")+i);
}
},
insertYearList:function(){
document.write("<select name=\""+this.yearFieldName+"\" onchange=\"dateSelect.updateDate(this.form);\">");
for(var i=this.date.getFullYear()-10;i<this.date.getFullYear()+10;i++){
document.write("<option value=\""+i+"\" "+((this.date.getFullYear()==i)?"selected=\"selected\"":"")+">"+i+"</option>");
}
document.write("</select>");
},
insertMonthList:function(){
document.write("<select name=\""+this.monthFieldName+"\" onchange=\"dateSelect.updateDate(this.form);\">");
for(var i=1;i<=12;i++){
document.write("<option value=\""+((i<10)?"0":"")+i+"\" "+((this.date.getMonth()+1==i)?"selected=\"selected\"":"")+">"+((i<10)?"0":"")+i+"</option>");
}
document.write("</select>");
},
insertDateList:function(){
document.write("<select name=\""+this.dateFieldName+"\">");
for(var i=1;i<=new Date(this.date.getFullYear(),this.date.getMonth()+1,0).getDate();i++){
document.write("<option value=\""+((i<10)?"0":"")+i+"\" "+((this.date.getDate()==i)?"selected=\"selected\"":"")+">"+((i<10)?"0":"")+i+"</option>");
}
document.write("</select>");
}
}
</script>
<form>
<script type="text/javascript">dateSelect.insertYearList();</script>
<script type="text/javascript">dateSelect.insertMonthList();</script>
<script type="text/javascript">dateSelect.insertDateList();</script>
</form>
Kommentar
Scriptet skapar en datum-väljare till ditt formulär. I grundutförande visar scriptet datum 10 år runt dagens datum. Scriptets första del kan med fördel läggas i en extern .js-fil och länkas in till sidan.
