二级市政建造师价格:javascript 编程题

来源:百度文库 编辑:查人人中国名人网 时间:2024/04/28 09:22:01
1. 有3个下拉框,分别有年、月、日的数值,如年的下拉框里有2003、2004、2005的数值,月的下拉框里有1到12的数值,日的下拉框里有1到31的数值。
请根据计算机当前的日期,下拉框就选中相对应的数值?例如是2003-2-26,那年的下拉框就选中2003,月的下拉框就选中2,日的下拉框就选中26。请注意,是选中对应的值,而下拉框里的数值是保留的,用户还可以再自定义选择。
2. 模仿window中的计算器,在页面上做一个自己的计算器。

<script>
var s_y,s_m,s_d;
function initSelectDate(d){
var curDate=new Date();
if (d!=null&&d.length>0)
curDate=new Date(d.replace(/-/gi,"/"))
s_y=document.getElementById("s_y");
s_m=document.getElementById("s_m");
s_d=document.getElementById("s_d");
for (var i=1970;i<2050;i++){
s_y.options.add(new Option(i,i))
}
for (var i=1;i<=12;i++){
s_m.options.add(new Option(i,i));
}
s_y.onchange=function(){changeDate()};
s_y.value=curDate.getFullYear();
s_m.onchange=function(){changeDate()};
s_m.value=curDate.getMonth()+1;
changeDate(curDate.getDate())
}
function changeDate(defaultDate){
var t;
if (isFinite(defaultDate))
t=defaultDate;
else
t=s_d.value;
s_d.options.length=0;
var j=0;
switch(parseInt(s_m.value,10)){
case 4:
case 6:
case 9:
case 11:
j=30;
break;
case 2:
var y=s_y.value;
if (y%4==0&&y%100!=0||y%400==0)
j=29;
else
j=28;
break;
default:
j=31;
}
for (var i=1;i<=j;i++)
s_d.options.add(new Option(i,i));
if (t!=""){
if (t>j)
s_d.value=j;
else
s_d.value=t;
}
else
s_d.value=new Date().getDate();
}
var curDate=new Date();
window.onload=function(){initSelectDate(curDate);}
</script>
出生年月:
<select id="s_y" name="sltYear"></select>年
<select id="s_m" name="sltMonth"><select>月
<select id="s_d" name="sltDay"></select>日