js年月日下拉框IE,Firefox,Opera浏览器都可以使用

js代码

//========================取系统时间==========================================
function getlocaltime(){
    if(typeof(HTMLElement)!="undefined" && !window.opera)
{
    HTMLElement.prototype.__defineGetter__("outerHTML",function()
    {
        var a=this.attributes, str="<"+this.tagName, i=0;for(;i         if(a[i].specified)
            str+=" "+a[i].name+'="'+a[i].value+'"';
        if(!this.canHaveChildren)
            return str+" />";
        return str+">"+this.innerHTML+" ";
    });
    HTMLElement.prototype.__defineSetter__("outerHTML",function(s)
    {
        var r = this.ownerDocument.createRange();
        r.setStartBefore(this);
        var df = r.createContextualFragment(s);
        this.parentNode.replaceChild(df, this);
        return s;
    });
    HTMLElement.prototype.__defineGetter__("canHaveChildren",function()
    {
        return !/^(area|base|basefont|col|frame|hr|img|br|input|isindex|link|meta|param)$/.test(this.tagName.toLowerCase());
    });
var strYYYY = document.getElementById("f1").yearo1.outerHTML;
var strMM = document.getElementById("f1").montho1.outerHTML;
var strDD = document.getElementById("f1").dayss1.outerHTML;
var strHH=document.getElementById("f1").hours1.outerHTML;
var strmm=document.getElementById("f1").mini1.outerHTML;
var MonHead = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
} else{
    var strYYYY = document.getElementById("f1").yearo1.outerHTML;
var strMM = document.getElementById("f1").montho1.outerHTML;
var strDD = document.getElementById("f1").dayss1.outerHTML;
var strHH=document.getElementById("f1").hours1.outerHTML;
var strmm=document.getElementById("f1").mini1.outerHTML;
var MonHead = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
    }
//先给年下拉框赋内容
var y = new Date().getFullYear();
//在之间插入正确的代码
var str = strYYYY.substring(0, strYYYY.length - 9);
for (var i = (y-30); i < (y+30); i++) //以今年为准,前30年,后30年
{
str += " " + i + "/r/n";
}
document.getElementById("f1").yearo1.outerHTML = str +"";
//赋月份的下拉框
var str = strMM.substring(0, strMM.length - 9);
for (var i = 1; i < 13; i++)
{
if(i>9){
str += " " + i + "/r/n";
}else{
str += " " + i + "/r/n";
}
}
document.getElementById("f1").montho1.outerHTML = str +"";
document.getElementById("f1").yearo1.value = y;
var monthtemp=parseInt(new Date().getMonth())+1;
if(monthtemp>9){
document.getElementById("f1").montho1.value=monthtemp;
}else{
document.getElementById("f1").montho1.value='0'+monthtemp;
}
//获取对应下标值
var n = MonHead[new Date().getMonth()];
//判断是否是闰年
if (new Date().getMonth() ==1 && IsPinYear(YYYYvalue)){
    //总天数+1
n++;
}
//赋日期下拉框
writeDay1(n);
//得到当前日期
var mtemp=new Date().getDate();
    if(mtemp>9){
                document.getElementById("f1").dayss1.value=mtemp;
    }else{
                document.getElementById("f1").dayss1.value ="0"+mtemp;
    }
//赋小时值
var strhour=strHH.substring(0,strHH.length-9);
for(var i=0;i<24;i++){
if(i>9){
strhour+= " " + i + "/r/n";
}else{
strhour+= "0" + i + "/r/n";
}
}document.getElementById("f1").hours1.outerHTML=strhour+"";
//获得当前小时
var mtemp=new Date().getHours();
if(mtemp>9){
        document.getElementById("f1").hours1.value=mtemp;
    }else{
        document.getElementById("f1").hours1.value ="0"+mtemp;
    }
//赋值分钟
var strmin=strmm.substring(0,strmm.length-9);
for(var i=0;i<60;i++){
if(i>9){
strmin+= " " + i + "/r/n";
}else{
strmin+= "0" + i + "/r/n";
}
}
document.getElementById("f1").mini1.outerHTML=strmin+"";
// 获得当前分钟
    var mtemp=new Date().getMinutes();
    if(mtemp>9){
        document.getElementById("f1").mini1.value=mtemp;
    }else{
        document.getElementById("f1").mini1.value ="0"+mtemp;
    }
}
//============处理函数===============
//年发生变化时日期发生变化(主要是判断闰平年)   
function YYYYMM1(str)
{
    if(typeof(HTMLElement)!="undefined" && !window.opera)
{
    HTMLElement.prototype.__defineGetter__("outerHTML",function()
    {
        var a=this.attributes, str="<"+this.tagName, i=0;for(;i         if(a[i].specified)
            str+=" "+a[i].name+'="'+a[i].value+'"';
        if(!this.canHaveChildren)
            return str+" />";
        return str+">"+this.innerHTML+" ";
    });
    HTMLElement.prototype.__defineSetter__("outerHTML",function(s)
    {
        var r = this.ownerDocument.createRange();
        r.setStartBefore(this);
        var df = r.createContextualFragment(s);
        this.parentNode.replaceChild(df, this);
        return s;
    });
    HTMLElement.prototype.__defineGetter__("canHaveChildren",function()
    {
        return !/^(area|base|basefont|col|frame|hr|img|br|input|isindex|link|meta|param)$/.test(this.tagName.toLowerCase());
    });
            strDD ="";
            var strDD = document.getElementById("f1").dayss1.outerHTML;
            var MMvalue = document.getElementById("f1").montho1.options[document.getElementById("f1").montho1.selectedIndex].value;
            if (MMvalue == ""){
            dayss1.outerHTML = strDD;
            return;
            }
            var n = MonHead[MMvalue - 1];
            if (
            MMvalue =='02' && IsPinYear(str)) n++;
            writeDay1(n)
} else{
            strDD ="";
            var strDD = document.getElementById("f1").dayss1.outerHTML;
            var MMvalue = document.getElementById("f1").montho1.options[document.getElementById("f1").montho1.selectedIndex].value;
            if (MMvalue == ""){
            dayss1.outerHTML = strDD;
            return;
        }
        var n = MonHead[MMvalue - 1];
        if (
        MMvalue =='02' && IsPinYear(str)) n++;
        writeDay1(n)
    }
}
function MMDD1(str) //月发生变化时日期联动
{
    if(typeof(HTMLElement)!="undefined" && !window.opera)
{
    HTMLElement.prototype.__defineGetter__("outerHTML",function()
    {
        var a=this.attributes, str="<"+this.tagName, i=0;for(;i         if(a[i].specified)
            str+=" "+a[i].name+'="'+a[i].value+'"';
        if(!this.canHaveChildren)
            return str+" />";
        return str+">"+this.innerHTML+" ";
    });
    HTMLElement.prototype.__defineSetter__("outerHTML",function(s)
    {
        var r = this.ownerDocument.createRange();
        r.setStartBefore(this);
        var df = r.createContextualFragment(s);
        this.parentNode.replaceChild(df, this);
        return s;
    });
    HTMLElement.prototype.__defineGetter__("canHaveChildren",function()
    {
        return !/^(area|base|basefont|col|frame|hr|img|br|input|isindex|link|meta|param)$/.test(this.tagName.toLowerCase());
    });
        strDD ="";
            var YYYYvalue = document.getElementById("f1").yearo1.options[document.getElementById("f1").yearo1.selectedIndex].value;
            if (str == ""){dayss1.outerHTML = strDD; return;}
            var n = MonHead[str - 1];
            if (str =="02" && IsPinYear(YYYYvalue)) n++;
            writeDay1(n)
} else{
            strDD ="";
            var YYYYvalue = document.getElementById("f1").yearo1.options[document.getElementById("f1").yearo1.selectedIndex].value;
            if (str == ""){dayss1.outerHTML = strDD; return;}
            var n = MonHead[str - 1];
            if (str =="02" && IsPinYear(YYYYvalue)) n++;
            writeDay1(n)
}
}
function writeDay1(n) //据条件写日期的下拉框
{
    if(typeof(HTMLElement)!="undefined" && !window.opera)
{
    HTMLElement.prototype.__defineGetter__("outerHTML",function()
    {
        var a=this.attributes, str="<"+this.tagName, i=0;for(;i         if(a[i].specified)
            str+=" "+a[i].name+'="'+a[i].value+'"';
        if(!this.canHaveChildren)
            return str+" />";
        return str+">"+this.innerHTML+" ";
    });
    HTMLElement.prototype.__defineSetter__("outerHTML",function(s)
    {
        var r = this.ownerDocument.createRange();
        r.setStartBefore(this);
        var df = r.createContextualFragment(s);
        this.parentNode.replaceChild(df, this);
        return s;
    });
    HTMLElement.prototype.__defineGetter__("canHaveChildren",function()
    {
        return !/^(area|base|basefont|col|frame|hr|img|br|input|isindex|link|meta|param)$/.test(this.tagName.toLowerCase());
    });
        strDD ="";
            var s = strDD.substring(0, strDD.length - 9);
            for (var i=1; i<(n+1); i++)
            {
                if(i>9){
                    s += " " + i + "/r/n"
                }else{
                s += " " + i + "/r/n"
                }
            }
            document.getElementById("f1").dayss1.outerHTML = s +"";
} else{
            strDD ="";
            var s = strDD.substring(0, strDD.length - 9);
            for (var i=1; i<(n+1); i++)
            {
                if(i>9){
                    s += " " + i + "/r/n"
                }else{
                s += " " + i + "/r/n"
                }
            }
            document.getElementById("f1").dayss1.outerHTML = s +"";
}
}
function IsPinYear(year)//判断是否闰平年
{ return(0 == year%4 && (year%100 !=0 || year%400 == 0))
}

你可能感兴趣的:(Date,function,浏览器,IE,Opera,firefox)