lhgcalendar時間插件限制只能選擇三個月的實現(xiàn)方法
更新時間:2017年07月03日 16:09:31 投稿:jingxian
下面小編就為大家?guī)硪黄猯hgcalendar時間插件限制只能選擇三個月的實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
廢話不多說,直接上代碼
/**
* lhgcalendar時間插件限制只能選擇三個月
* @d 獲取到的開始時間
* @m 要限制的時間的長度(月)
*將最后獲得的結(jié)束時間與開始時間存放在input中
*/
function addMoth(d,m){
var ds=d.split('-');
var ds1 = ds[1]-1+m;
var ds2 = ds[2];
d=new Date( ds[0],ds1,ds[2]);
var cond1 = parseInt(ds[0]) % 4 == 0; //條件1:年份必須要能被4整除
var cond2 = parseInt(ds[0]) % 100 != 0; //條件2:年份不能是整百數(shù)
var cond3 = parseInt(ds[0]) % 400 ==0;
if(cond1 && cond2 || cond3 ){ //如果是閏年,選擇后面的時間可以到月末
if(parseInt(ds2) == 29){
ds2 = 31
}
}else {
if (parseInt(ds2) == 28) {
ds2 = 31
}
}
if(ds1 < 10){
ds1 = '0'+ ds1 ;//月份小于10加0
}
if(ds1 > 12){//跨年年份+1
ds1 = ds1 - 12;
ds[0] = parseInt(ds[0]) + 1;
var cond1 = parseInt(ds[0]) % 4 == 0; //條件1:年份必須要能被4整除
var cond2 = parseInt(ds[0]) % 100 != 0; //條件2:年份不能是整百數(shù)
var cond3 = parseInt(ds[0]) % 400 ==0;
if(cond1 && cond2 || cond3 ){
if(parseInt(ds1) == 2){//如果到2月,閏年最大29,平年28
ds2 = 29
}
}else {
if (parseInt(ds1) == 2) {
ds2 = 28
}
}
ds1 = '0'+ ds1 ;
}
if( ds2 < 10){
ds2 = '0' +ds2;
}
d1 = new Date( ds[0],ds1,ds2);
return ds[0] + '-' + ds1 +'-'+ds2;
}
//如果開始選擇結(jié)束日期,給結(jié)束日期減去三個月
function reduceMoth(d,m){
var ds=d.split('-');
if(ds[1] == 2){//如果選擇的是2月,開始時間可以選到前一年11月30
ds[2] = 30
}
var ds1 = ds[1]-1-m;
var ds2 = ds[2];
d=new Date( ds[0],ds1,ds[2]);
if( ds1 >= 1 && ds1 < 10){
ds1 = '0'+ ds1 ;
}
if(ds1 < 1){//跨年,開始時間年份-1,月份+12
ds[0] = parseInt(ds[0]) - 1;
ds1 = ds1 + 12;
}
if(ds2 < 10){
ds2 = '0' +ds2;
}
var cond1 = parseInt(ds[0]) % 4 == 0; //條件1:年份必須要能被4整除
var cond2 = parseInt(ds[0]) % 100 != 0; //條件2:年份不能是整百數(shù)
var cond3 = parseInt(ds[0]) % 400 ==0;
if(cond1 && cond2 || cond3 ){//如果開始時間到閏年2月可選擇29,平年28
if(parseInt(ds1) == 2){
ds2 = 29
}
}else {
if(parseInt(ds1) == 2){
ds2 = 28
}
}
d1 = new Date( ds[0],ds1,ds2);
return ds[0] + '-' + ds1 +'-'+ds2;
}
以上這篇lhgcalendar時間插件限制只能選擇三個月的實現(xiàn)方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
JavaScript 手動實現(xiàn)instanceof的方法
instanceof運算符用于檢測構(gòu)造函數(shù)的prototype屬性是否出現(xiàn)在某個實例對象的原型鏈上,本文重點給大家介紹JavaScript手動實現(xiàn)instanceof的問題,感興趣的朋友跟隨小編一起看看吧2021-10-10
JavaScrip實現(xiàn)PHP print_r的數(shù)功能(三種方法)
PHP print_r的函數(shù)很好用,可以用來打印數(shù)組、對象等的結(jié)構(gòu)與數(shù)據(jù),可惜JavaScript并沒有原生提供類似的函數(shù)。不過我們可以試著自己來實現(xiàn)這個函數(shù),下面提供一些方法與思路2013-11-11
uniapp調(diào)用百度語音實現(xiàn)錄音轉(zhuǎn)文字功能
這篇文章主要介紹了uniapp通過調(diào)用百度語音,實現(xiàn)錄音轉(zhuǎn)文字的功能。文中的示例代碼對我們學(xué)習(xí)或工作有一定的幫助,感興趣的小伙伴可以跟隨小編學(xué)習(xí)一下2021-12-12
JavaScript實現(xiàn)動態(tài)增刪表格的方法
本篇文章主要介紹了JavaScript實現(xiàn)動態(tài)增刪表格,可以實現(xiàn)表格增加和刪除數(shù)據(jù)的功能,非常具有實用價值,有興趣的可以了解一下2017-03-03

