<html>
<head>
<script language="JavaScript">
<!--
var objReport=null;
var objYear=null;
var objMonth=null;
var objDate=null;
/*
*页面初始化
*/
function init(name){
var dlts = document.getElementsByName(name);
objReport=dlts[0];
objYear=dlts[1];
objMonth=dlts[2];
objDate=dlts[3];
objReport.attachEvent("onchange",RptChg);
objYear.attachEvent("onchange",YearChg);
objMonth.attachEvent("onchange",MonthChg);
var date = new Date();
var curYear=date.getYear();
var curMonth=date.getMonth()+1;
var curDate=date.getDate();
if(objYear == null || objMonth == null || objDate == null ){
alert("Can't find object!"); 
return false;
}
var str="";
optAdd(objReport,"年报");
optAdd(objReport,"月报");
optAdd(objReport,"日报");
initDltValue(objYear,2009,2009);
initDltValue(objMonth,1,12);
initDltValue(objDate,1,CalDays(curYear,curMonth));
objReport.value="日报";
objYear.value=curYear;
objMonth.value=curMonth;
objDate.value=curDate;} 
/*
*添加select的option值
*/
function initDltValue(obj,min,max){
for(var i=min;i<=max;i++)
optAdd(obj,i);
}
/*
*当报表类型改变的时候
*/
function RptChg(){
switch(objReport.options[objReport.selectedIndex].value){
case '年报':
setDisabled(false,true,true);break;
case '月报':
setDisabled(false,false,true);break;
case '日报':
setDisabled(false,false,false);break;
}
}
/*
*当年份改变的时候
*/
function YearChg(){
var dateVal=objDate.value;
objDate.innerHTML="";
initDltValue(objDate,1,CalDays(parseInt(objYear.value),parseInt(objMonth.value)));
objDate.value=dateVal;
if(objDate.selectedIndex==-1) objDate.selectedIndex=0;
}
/*
*当月份改变的时候
*/
function MonthChg(){
objDate.innerHTML="";
initDltValue(objDate,1,CalDays(parseInt(objYear.value),parseInt(objMonth.value)));
}
/*
*设置对象的disabled属性
*/
function setDisabled(a,b,c){
objYear.disabled=a;
objMonth.disabled=b;
objDate.disabled=c;
}
/*
*为select对象添加option
*/
function optAdd(obj,val){
var newOpt=document.createElement("option");
obj.add(newOpt);
newOpt.value=val;
newOpt.text=val;
}
/*
*根据年月计算天数
*/
function CalDays(year,mon){
var date= new Date(year,mon,0);
return date.getDate();}
//-->
</script>
</head>
<body onLoad="init('dltDate');">
<table cellpadding=0 cellspacing=0 border=0 width=400>
<tr>
<td width="25%"><select name="dltDate" style="width:100%"></select></td>
<td width="25%"><select name="dltDate" style="width:100%"></select></td>
<td width="25%"><select name="dltDate" style="width:100%"></select></td>
<td width="25%"><select name="dltDate" style="width:100%"></select></td>
</tr>
</table>
</body>
</html>我想要实现的效果 是不管月份还是天数如果小于 10 就显示 01 02 等

解决方案 »

  1.   

    <html>
    <head>
    <script language="JavaScript">
    <!--
    var objReport=null;
    var objYear=null;
    var objMonth=null;
    var objDate=null;
    /*
    *页面初始化
    */
    function init(name){
    var dlts = document.getElementsByName(name);
    objReport=dlts[0];
    objYear=dlts[1];
    objMonth=dlts[2];
    objDate=dlts[3];
    objReport.attachEvent("onchange",RptChg);
    objYear.attachEvent("onchange",YearChg);
    objMonth.attachEvent("onchange",MonthChg);
    var date = new Date();
    var curYear=date.getYear();
    var curMonth=('0' + (date.getMonth()+1)).slice(-2);
    var curDate=('0' + date.getDate()).slice(-2);
    if(objYear == null || objMonth == null || objDate == null ){
    alert("Can't find object!"); 
    return false;
    }
    var str="";
    optAdd(objReport,"年报");
    optAdd(objReport,"月报");
    optAdd(objReport,"日报");
    initDltValue(objYear,2009,2009);
    initDltValue(objMonth,1,12);
    initDltValue(objDate,1,CalDays(curYear,curMonth));
    objReport.value="日报";
    objYear.value=curYear;
    objMonth.value=curMonth;
    objDate.value=curDate;} 
    /*
    *添加select的option值
    */
    function initDltValue(obj,min,max){
    for(var i=min;i<=max;i++)
    if(new String(min).length != 4) {
    optAdd(obj,("0" + i).slice(-2));
    }else {
    optAdd(obj,i);
    }
    }
    /*
    *当报表类型改变的时候
    */
    function RptChg(){
    switch(objReport.options[objReport.selectedIndex].value){
    case '年报':
    setDisabled(false,true,true);break;
    case '月报':
    setDisabled(false,false,true);break;
    case '日报':
    setDisabled(false,false,false);break;
    }
    }
    /*
    *当年份改变的时候
    */
    function YearChg(){
    var dateVal=objDate.value;
    objDate.innerHTML="";
    initDltValue(objDate,1,CalDays(parseInt(objYear.value),parseInt(objMonth.value)));
    objDate.value=dateVal;
    if(objDate.selectedIndex==-1) objDate.selectedIndex=0;
    }
    /*
    *当月份改变的时候
    */
    function MonthChg(){
    objDate.innerHTML="";
    initDltValue(objDate,1,CalDays(parseInt(objYear.value),parseInt(objMonth.value)));
    }
    /*
    *设置对象的disabled属性
    */
    function setDisabled(a,b,c){
    objYear.disabled=a;
    objMonth.disabled=b;
    objDate.disabled=c;
    }
    /*
    *为select对象添加option
    */
    function optAdd(obj,val){
    var newOpt=document.createElement("option");
    obj.add(newOpt);
    newOpt.value=val;
    newOpt.text=val;
    }
    /*
    *根据年月计算天数
    */
    function CalDays(year,mon){
    var date= new Date(year,mon,0);
    return date.getDate();}
    //-->
    </script>
    </head>
    <body onLoad="init('dltDate');">
    <table cellpadding=0 cellspacing=0 border=0 width=400>
    <tr>
    <td width="25%"><select name="dltDate" style="width:100%"></select></td>
    <td width="25%"><select name="dltDate" style="width:100%"></select></td>
    <td width="25%"><select name="dltDate" style="width:100%"></select></td>
    <td width="25%"><select name="dltDate" style="width:100%"></select></td>
    </tr>
    </table>
    </body>
    </html>
      

  2.   

    用string的length属性
    比如
    var test=1;
    test=test.toString;//转化为字符串if(test.length<1){ //如果字符串位数小于1 就在前面加"0";
    test="0"+test;
    }
      

  3.   


    <%@ page language="java" contentType="text/html;charset=GB2312"%> 
    <%@ page import="Web.DateTime.DateTimeUtil"%>
    <html>
    <head>
    <script type="text/javascript" src="/include/js/comm.js"></script><select onchange="ajax_one_change(this.options[this.selectedIndex].value)" name="rtype" id="rtype">
    <option value="day">日报</option>
    <option value="month">月报</option>
    <option value="year">年报</option>
    </select><select onchange="ajax_two_change(this.options[this.selectedIndex].value)" name="ryear" id="ryear" >
    <%
    int ny=DateTimeUtil.getYear(DateTimeUtil.getNow());
    for(int y=2007;y<=ny;y++)
    {
    %>
    <option value="<%=y%>"><%=y%></option>
    <%
    }
    %>
    </select><select onchange="ajax_three_change(this.options[this.selectedIndex].value)" name="rmonth" id="rmonth" >
    <%
    int nm=DateTimeUtil.getMonth(DateTimeUtil.getNow());
    for(int m=1;m<=nm;m++)
    {
    if(m==nm)
    {
    if(m<10)
    {
    %>
    <option value="<%=m%>" selected>0<%=m%></option>
    <%
    }
    else
    {
    %>
    <option value="<%=m%>" selected><%=m%></option>
    <%
    }
    }
    else
    {
    if(m<10)
    {
    %>
    <option value="<%=m%>" >0<%=m%></option>
    <%
    }
    else
    {
    %>
    <option value="<%=m%>"><%=m%></option>
    <%
    }
    }
    }
    %>
    </select><select name="rday" id="rday" >
    <%
    int nd=DateTimeUtil.getDate(DateTimeUtil.getNow());
    for(int d=1;d<=nd;d++)
    {
    if(d==nd)
    {
    if(d<10)
    {
    %>
    <option value=0"<%=d%>" selected>0<%=d%></option>
    <%
    }
    else
    {
    %>
    <option value="<%=d%>" selected><%=d%></option>
    <%
    }
    }
    else
    {
    if(d<10)
    {
    %>
    <option value=0"<%=d%>" >0<%=d%></option>
    <%
    }
    else
    {
    %>
    <option value="<%=d%>"><%=d%></option>
    <%
    }
    }
    }
    %>
    </select>
    <SCRIPT language=javascript>/*
    *添加select的option值
    */
    function initDltValue(obj,min,max)
    {
    obj.options.length=0;
    for(var i=min;i<=max;i++)
    if(i<10)
    {
    optAdd(obj,"0"+i);
    }
    else
    {
    optAdd(obj,i);
    }
    }/*
    *为select对象添加option
    */
    function optAdd(obj,val)
    {
    //obj.options.add(new Option(val,val)); 
    var newOpt=document.createElement("option");
    obj.add(newOpt);
    newOpt.value=val;
    newOpt.text=val;
    }/*
    *根据年月计算天数
    */
    function CalDays(year,mon)
    {
    var date= new Date(year,mon,0);
    return date.getDate();
    }/*
    *设置对象的disabled属性
    */
    function setDisabled(a,b,c)
    {
    $("ryear").disabled=a;
    $("rmonth").disabled=b;
    $("rday").disabled=c;
    }
    //------------------------------------------------------------     
    function ajax_one_change(rtype)
    {
    if(rtype=="year")
    {
    setDisabled(false,true,true);
    }
    else if(rtype=="month")
    {
    setDisabled(false,false,true);
    }
    else
    {
    setDisabled(false,false,false);
    }
    }  //------------------------------------------------------------     
    function ajax_two_change(ryear)
    {
    var m = $("rmonth"); 
    initDltValue(rmonth,1,12);
    initDltValue(rday,1,CalDays(ryear,m.options[m.selectedIndex].value));
    }  //------------------------------------------------------------     
    function ajax_three_change(rmonth)
    {
    var y = $("ryear"); 
    initDltValue(rmonth,1,12);
    initDltValue(rday,1,23);


    </SCRIPT>改进的版本如上
    又出了别一个问题 选择月份的时候提示出错 'option' is null or not an object  帮忙看一下
      

  4.   

    版本一 JSP无法获取参数 希望大家帮忙改进一下版本二