o1值2009/10/16
o2值4
如何让o3的值输出为2009/10/20?function addNumber(o1,o2,o3) {
var v1 = new Date(o1.value); 
var v2 = parseInt(o2.value);
v1.setDate(v1.getDate()+v2);
o3.value = v1.toLocaleDateString()
}谢谢!

解决方案 »

  1.   

    页面加上这个:
    if(!Date.format){//日期格式化
        Date.prototype.format = function(format)
        {
            var o =
            {
                "M+" : this.getMonth()+1, //month
                "d+" : this.getDate(),    //day
                "h+" : this.getHours(),   //hour
                "m+" : this.getMinutes(), //minute
                "s+" : this.getSeconds(), //second
                "q+" : Math.floor((this.getMonth()+3)/3),  //quarter
                "S" : this.getMilliseconds() //millisecond
            }
            if(/(y+)/.test(format))
            format=format.replace(RegExp.$1,(this.getFullYear()+"").substr(4 - RegExp.$1.length));
            for(var k in o)
            if(new RegExp("("+ k +")").test(format))
            format = format.replace(RegExp.$1,RegExp.$1.length==1 ? o[k] : ("00"+ o[k]).substr((""+ o[k]).length));
            return format;
        };
    }然后
    o3.value=v1.format("yyyy/MM/dd");
      

  2.   

    function addNumber(o1,o2,o3) { 
    var v1 = new Date(o1.value); 
    var v2 = parseInt(o2.value); 
    v1.setTime(v1.getTime()+v2*24*60*60*1000);
    o3.value = v1.getFullYear()+"/"+(v1.getMonth()+1<10?"0":"")+(v1.getMonth()+1)+"/"+(v1.getDate()<10?"0":"")+v1.getDate();
    }
      

  3.   


    <script>
        function addNumber(o1,o2,o3) { 
            var v1 = new Date(o1);      
            v1=parseInt(v1.valueOf())+parseInt(o2)*24*3600*1000;
            o3=new Date(v1)
            o3=o3.toLocaleDateString();
            return o3
        }
        var ret;
        ret=addNumber("2009/10/16","4");
        alert(ret);
    </script>
      

  4.   

    ls正解,其实也可以把ls的代码改成Date.prototype.add = function (day){day = parseInt(v); 
    var m = this.getTime() + day * 24 * 60 * 60 * 1000
    return new Date(m);}Date.prototype.format= function (){var rtn = this.getFullYear()+"/"+(this.getMonth()+1<10?"0":"")+(this.getMonth()+1)+"/"+(this.getDate()<10?"0":"")+this.getDate();return rtn;}具体可以参考http://www.cnblogs.com/yukaizhao/archive/2007/04/24/javascript_date_extend.html