日期框點擊事件,修改所有class值 日期格式加年月日時分秒季度

案例:

 

結果:

 


 

<div id="text-he" style="padding-top:10px;padding-bottom:10px;">
<a class="btn green btn-block" href="javascript:printpage();" style="width:50px;"> 打印 </a>
<input type="text" name="mdate" value="" class="easyui-datebox"/>
<button type="button" onclick="dateTime()">確認</button>
</div>

style="font-weight: bold; text-decoration:underline"//遍歷值加span標籤上 有下劃線

<span class="startDateClass" id="startDate">${sernrEntities.startDate}</span>
<span class="endDateClass" id="endDate">${sernrEntities.endDate}</span>

目的:通過日期選擇框,給所有標籤賦值(遍歷屬性)

 

function dateTime() {
    var dv2 =document.getElementsByName('mdate')[0].value;
    var nyr = dv2.split("-");
    var dvStart = nyr[0] + " 年" + nyr[1] + " 月" + nyr[2]+ " 日";
    var dv3=  getDate(dv2)
    var dv4 =DateAdd('y',3,dv3);//加三年
    var dv5 =DateAdd('d',1,dv4);//加一天
    var dv6 = dateToString(dv5)
    //var dv3 = document.getElementById("startDate").innerText=dv2;//取標籤屬性值
    var aEle=document.getElementsByTagName('*');
    for(var i=0;i<aEle.length;i++){

        /*將每個className拆分*/
        var arr=aEle[i].className.split(/\s+/);
        for(var j=0;j<arr.length;j++){
            /*判斷拆分後的數組中有沒有滿足的class*/

            if(arr[j]=='startDateClass'){
                aEle[i].innerHTML=dvStart;
            }
            if(arr[j]=='endDateClass'){
                aEle[i].innerHTML=dv6;
            }
        }
    }
}
//字符串轉日期格式,strDate要轉爲日期格式的字符串 我的日期格式是2019-11-11 如果是 2019:11:11請放開下面註釋
function getDate(strDate) {
    var st = strDate;
    var a = st.split(" ");
    var b = a[0].split("-");
    //var c = a[1].split(":");
    // var date = new Date(b[0], b[1], b[2], c[0], c[1], c[2])
    var date = new Date(b[0], b[1], b[2])
    return date;
}

//js日期格式相加 -年 - 月 日 時 分  秒 季度

調用方式例如:
var dv4 =DateAdd('y',3,dv3);//加三年
var dv5 =DateAdd('d',1,dv4);//加一天

function DateAdd(interval, number, date) {
    debugger;
    switch (interval) {
        case "y": {
            date.setFullYear(date.getFullYear() + number);
            return date;
            break;
        }
        case "q": {
            date.setMonth(date.getMonth() + number * 3);
            return date;
            break;
        }
        case "m": {
            date.setMonth(date.getMonth() + number);
            return date;
            break;
        }
        case "w": {
            date.setDate(date.getDate() + number * 7);
            return date;
            break;
        }
        case "d": {
            date.setDate(date.getDate() + number);
            return date;
            break;
        }
        case "h": {
            date.setHours(date.getHours() + number);
            return date;
            break;
        }
        case "m": {
            date.setMinutes(date.getMinutes() + number);
            return date;
            break;
        }
        case "s": {
            date.setSeconds(date.getSeconds() + number);
            return date;
            break;
        }
        default: {
            date.setDate(d.getDate() + number);
            return date;
            break;
        }
    }
}
//日期轉String
function dateToString (date){
    debugger;
    var year = date.getFullYear();
    var month =(date.getMonth()).toString();
    var day = (date.getDate()).toString();
    if (month.length == 1) {
        month = "0" + month;
    }
    if (day.length == 1) {
        day = "0" + day;
    }
    var dateTime = year + " 年" + month + " 月" + day+ " 日";
    return dateTime;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章