我在我的網頁上有一個開始時間,開始日期和結束日期,結束時間。我需要確保如果開始日期和結束日期相等,那麼結束時間必須大於開始時間如果結束日期大於開始日期,則用戶可以隨時輸入。如何才能實現此驗證?使用Javascript比較時間
2
A
回答
6
我會極力推薦類似Datejs的東西。這應該不過給你一個起點:
如果你決定使用Datejs你應該使用解析從Date.parse(startDate)
輸入字段的值。查看Getting Started.如果您決定不使用DateJs,則可以將getTime()附加到startTime var。 (例如 - endTime.getTime() < startTime.getTime()
)
var error = '';
// if the start date is after the end date
if (startDate > endDate){
var error = error + 'Your start date is after your end date.';
}
// if the start date and end date are the same -- and end time is before the start time
else if(startDate == endDate && endTime < startTime){
var error = error + 'Your end time is before your start time.';
};
// handle any errors
if(error.length){
alert(error);
};
3
它的好,知道的東西是如何工作的,你可以從這個自己構建不依賴於一個框架中受益。如果您想嘗試一下,假設你有你的日期和時間簡單的字符串,你可以用這個啓動:
var dateStart = "Oct 13, 2010";
var timeStart = "10:13";
var dateEnd = "Nov 11, 2011";
var timeEnd = "14:56";
var startDate = new Date(dateStart + " " + timeStart);
var endDate = new Date(dateEnd + " " + timeEnd);
alert(startDate > endDate);
對於真正的代碼中看到http://jsbin.com/oponu3/edit
如果你只是用這個來比較的時候,那麼這將工作:
var myDate = "Oct 13, 2010";
var timeStart = "10:13";
var timeEnd = "14:56";
var startDate = new Date(myDate + " " + timeStart);
var endDate = new Date(myDate + " " + timeEnd);
alert(startDate > endDate);
你可以通過檢查非法日期值來加強這一點。檢查JavaScript的Date對象這樣做的W3C參考:http://www.w3schools.com/js/js_obj_date.asp
// calculate difference (added 2012-04-04)
var milliseconds = Math.abs(startDate.getTime() - endDate.getTime());
var seconds = milliseconds/1000;
var minutes = seconds/60;
var hours = minutes/60;
// etc etc etc
相關問題
- 1. Javascript時間比較
- 2. 使用javascript僅比較時間
- 3. Javascript比較時間戳
- 4. 的Javascript時間比較
- 5. javascript日期時間比較
- 6. 比較javascript時間和php時間
- 7. 比較使用Javascript
- 8. 時間比較
- 9. 在javascript中比較系統時間與用戶時間
- 10. Javascript比較日期和時間
- 11. 比較日期和時間Javascript
- 12. 在javascript中比較時間和日期
- 13. 如何在JavaScript中比較UTC時間
- 14. 比較PHP/Javascript中的時間戳
- 15. JavaScript的AM/PM時間比較
- 16. Dart與JavaScript的加載時間比較
- 17. Javascript - 比較沒有時間的日期
- 18. 如何在JavaScript中比較時間?
- 19. 如何只比較JavaScript中的時間?
- 20. 試圖比較時間使用字符串比較
- 21. 比較時在javascript
- 22. 使用Python比較UTC時間和東部時間使用Python
- 23. Bash比較時間使用日期
- 24. MySql的選擇使用時間比較
- 25. 使用sql查詢比較時間
- 26. 如何比較時間使用vba
- 27. 比較時間使用日期命令
- 28. 使用時間戳比較mysql日期
- 29. 比較使用javasctipt的日期時間
- 30. 時間戳比較
怎麼樣使用jquery'date插件... – kobe 2010-12-10 07:16:43
是他們`Date`的? – 2010-12-10 07:16:59
這個問題是接近你的問題http://stackoverflow.com/questions/833997/end-date-greater-than-start-date-jquery-validation – kobe 2010-12-10 07:19:48