我有一个字符串格式的日期范围,如12/20 / 12-12 / 24/12(开始日期 - 结束日期)。 我需要检查开始日期是否已超过当前日期。可以使用JS或j查询完成吗? 日期范围是字符串吗?
答案 0 :(得分:3)
使用Date
对象的力量!
var myString = "12/20/2012-12/24/2012",
parts = myString.split("-");
if (Date.parse(parts[0]) < Date.now()) {
alert("start date has past the present date");
}
你也可以写new Date(parts[0]) < new Date
。
答案 1 :(得分:0)
使用datejs
var today = Date.today();
var yourDay = Date.parse(yourDateTimeString);
var result = Date.compare(today, yourDay);
var isValid= result == -1;
如果compare
小于today
,则 yourDay
会返回-1
答案 2 :(得分:0)
thanx evry1 ..我得到了答案 这是......
function cancel()
{
var eventId=status_ID.substr(0,status_ID.indexOf("-"));
var status=status_ID.substr(status_ID.indexOf("-")+1,status_ID.indexOf(":")-4);
var eventRange=status_ID.substr(status_ID.indexOf(":")+1,status_ID.length);
//alert(status);
//alert(eventRange);
if(status=="OPEN"){
var startDate = eventRange.substr(0,eventRange.indexOf("-"));
//alert(startDate);
// alert("open");
var todayDay = new Date().getDate();
// alert(todayDay);
var todayMonth = new Date().getMonth();
alert(todayMonth);
var todayFullYear = new Date().getFullYear();
var todayYear=todayFullYear.toString().substr(2,4);
// alert(todayYear);
parts = startDate.split("/");
//alert(parts[0]);
//alert(parts[1]);
//alert(parts[2]);
var flag1=false;
if(parts[2]>todayYear){
flag1=true;
}
if(parts[2]==todayYear){
if(parts[1]>todayMonth+1)
{
flag1=true;
}
if(parts[1]==todayMonth+1)
{
if(parts[0]>todayDay)
{
flag1=true;
}
}
}
if(flag1)
{
alert("event can be cancelled");
document.forms[0].submit();
}
else
{
alert("event has already started");
return false;
}
}
else
{
alert("The event has closed");
}
}