js中的時間對比


參數格式(yyyy-MM--dd)

var a = new Date("時間參數");

var b = new Date("時間參數");

if(a.getTime()<=b.getTime()){

alert("想要描述的文字!")

}

這樣子就可以在js中直接用於比較兩個時間的前后!

下面是自己用jcDate寫的一個例子,僅供需要的人用!

首先標記兩個時間點

$("#start").click(function(){
$("#timeStatue").val(0)
});
$("#end").click(function(){
$("#timeStatue").val(1)
});

因為插件只引用一次,所以需要對兩個時間點分別定義

var Sy = $year.text()+"-",
Sm = $month.text()+"-",
Sd = $HiddenText.val();
NowDateArr = new Array(Sy,Sm,Sd);
dateInfo =NowDateArr.join(options.format);
if($hh.val() != "00" || $mm.val() != "00" ){
var Sh = $hh.val(),
Sm = $mm.val();
NowDateArr.push(Sh+":"+Sm);
printDate = NowDateArr.join(options.format).substring(),
format = printDate.split("/");
dateInfo = format[0]+options.format+format[1]+options.format+format[2]+" "+format[3]
};

獲取指定格式的時間(yyyy-MM-dd)

當然其中的“-”也可分別換成“年”,“月”,“日”

var Sy1 = $year.text()+"年",
Sm1 = $month.text()+"月",
Sd1 = $HiddenText.val()+"日";
NowDateArr = new Array(Sy1,Sm1,Sd1);
dateInfo1 =NowDateArr.join(options.format);
if($hh.val() != "00" || $mm.val() != "00" ){
var Sh1 = $hh.val(),
Sm1 = $mm.val();
NowDateArr.push(Sh1+":"+Sm1);
printDate = NowDateArr.join(options.format).substring(),
format = printDate.split("/");
dateInfo1 = format[0]+options.format+format[1]+options.format+format[2]+" "+format[3]

最后是賦值

var data = $("#timeStatue").val();
var a1 =new Date($("#startTime").val());
var b1 =new Date($("#endTime").val());
if(data==0){
var d1= new Date(dateInfo);
if($("#startTime").val()!=""){
if($("#endTime").val()==""){
$("input.dateVisited").val(dateInfo1);
$("#startTime").val(dateInfo);
closeDate();
}else{
if(b1.getTime()<=d1.getTime()){
alert("開始日期不能大於或等於結束日期!");
closeDate();
}else{
$("input.dateVisited").val(dateInfo1);
$("#startTime").val(dateInfo);
closeDate();
}
}
}else{
if($("#endTime").val()==""){
$("input.dateVisited").val(dateInfo1);
$("#startTime").val(dateInfo);
closeDate();
}else{
if(b1.getTime()<=d1.getTime()){
alert("結束日期不能小於或等於開始日期!")
closeDate();
}else{
$("input.dateVisited").val(dateInfo1);
$("#startTime").val(dateInfo);
closeDate();
}
}
}
}
if(data==1){
var c1= new Date(dateInfo);
if($("#endTime").val()!=""){
if($("#startTime").val()==""){
$("input.dateVisited").val(dateInfo1);
$("#endTime").val(dateInfo);
closeDate();
}else{
if(a1.getTime()>=c1.getTime()){
alert("結束日期不能小於開始日期!")
closeDate();
}else{
$("input.dateVisited").val(dateInfo1);
$("#endTime").val(dateInfo);
closeDate();
}
}
}else{
if($("#startTime").val()==""){
$("input.dateVisited").val(dateInfo1);
$("#endTime").val(dateInfo);
closeDate();
}else{
if(a1.getTime()>=c1.getTime()){
alert("結束日期不能小於開始日期!")
closeDate();
}else{
$("input.dateVisited").val(dateInfo1);
$("#endTime").val(dateInfo);
closeDate();
}
}
}
}
};

主要的麻煩點就在最后的校驗部分,因為jcDate本身只是添加時間,並沒有相關的處理大小的方法,而且初始化的樣式很丑,和date97樣式類似,但要是css小白用起來還是有點問題的!

不過只要改一點點相關的樣式,就可以看起來很高大上,開發的路上,勇往直前吧!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM