2017-06-20 54 views
0

我是jquery的新手,我從日期和日期選擇器獲取日期。如何在jquery中編寫日期驗證

這裏我試圖添加驗證,我想從日期和日期之間只有30天。

var fromDate = $("#from_txn_date").val();//2017-02-20 00:00:00 
var toDate = $("#to_txn_date").val();//2017-06-20 00:00:00 

上述日期有4個月差(約120天),但我想fromDate沒有比30天更大。

if(fromDate > 30) 
{ 
alert("**if**"); 
return false; 
}else{ 
alert("**else**"); 
} 

我試過我的方式,但它不工作。

我的代碼有什麼問題?

+0

@Bhushan Kawadkar:這不是重複的問題。請仔細閱讀我的問題 – Durga

+0

如果我沒有弄錯你的問題是與日期比較。在這裏,您比較日期文本而不是日期對象,導致錯誤的輸出。我提到你的問題的鏈接做了與日期轉換和比較相同的事情。 Okx發佈的答案正在做同樣的事情。讓我知道是否有任何顧慮。 –

回答

1

試試這個:

function submit() { 
 
    var fromDate = new Date(document.getElementById("from").value); 
 
    var toDate = new Date(document.getElementById("to").value); 
 
    var millisecondsDiff = toDate - fromDate; 
 
    if(millisecondsDiff > 2592000000) { // 30 days 
 
    document.getElementById("output").innerHTML = "Range too big!"; 
 
    } else { 
 
    document.getElementById("output").innerHTML = "Range is okay."; 
 
    } 
 
}
<input id="from" type="date"> 
 
<input id="to" type="date"> 
 
<br/> 
 
<button onclick="submit()"> 
 
    Submit 
 
</button> 
 
<div id="output"> 
 

 
</div>

+0

我也與時間相處。這裏'millisecondsDiff'得到'NaN' – Durga

+0

@Durga什麼時候得到NaN?如果沒有選擇日期,可能會這樣做。 – Okx

+0

但從日期和日期得到日期 – Durga