我正在创建一个表单,我希望它能让这个人过完整的生日。我正在收集他们出生的日,月和年。我有两个问题:
我可以这样做,如果他们选择二月作为他们的出生月份,它会在“天数”选择框中显示29天,但如果他们选择三月,则会在“天”中显示31天选择框。
我有一个提示框,在提交之前向他们显示他们的信息。现在它告诉他们,出生日期:月/日/年(例如: 12/6/1970 )。是否有一个代码可以让我这么说,年龄:{年龄} (例如:年龄:34岁)。
< / LI> 醇>谢谢!
答案 0 :(得分:1)
如果您使用的是jQuery,那么您可以查看$.datePicker,它将为您处理月/日情况。 (和其他选项here)。至于格式化,您可以查看$().tmpl。
如果您只是使用纯JavaScript,则可以检查月份值,并根据该更新确定该月份的天数。就像这样。
var month_select = document.getElementById("month");
month_select.onchange = function(){
var month = month_select.options[mySelect.selectedIndex].value, days;
if(month == 2){ // Feb
days = 28; // or 29 if you want to check for the leap year as well
}else if(month % 2){ // if the month is "even"
days = month <= 7 : 30 : 31; // if the month is odd and between Jan - July, then it will have 30 days, otherwise it will have 31
}else{
days = month <= 7 : 31 : 30; // similar to above but when months are odd
}
// update days via DOM here
var options = month_select.options, options_length = options.length;
if(days > options_length){ // if it has options in days then the currently selected month, then remove some
}else if(days < options_length){ // if it has less, then add
} // if it has the same number, then don't do anything
}