2013-05-12 109 views
0

我已經嘗試了檢查這個邏輯工作的每個組合,我無法找到正確的語法。Javascript檢查空日期選擇器

我的JavaScript以下位:

var d = $("#myDatepicker1").datepicker("getDate"); 
if ($.isEmptyObject(d)) { 
    $("#dailySummaryDateSelector").datepicker("setDate", new Date()); 
} 

頁面加載和d評估螢火蟲其顯示爲Object [ ]

if聲明我已經試過:

if (d == null) { 
if (d == {}) { 
if (d == Object()) { 
if ($.isEmptyObject(d)) { 
if (d.isEmptyObject()) { 

這些都不起作用。據我所知Object [ ]是一個空的對象,所以我如何真正測試它,並得到執行if語句的內容?

+1

奇怪。 '(d == null)'應該可以工作。你確實意識到你正在調用兩個ID('$(「#myDatepicker1」)''和$(「#dailySummaryDateSelector」)),對吧? – acdcjunior 2013-05-12 19:46:33

+0

斑點!我不敢相信我錯過了! (d == null)現在確實在工作! – Jammer 2013-05-12 19:51:33

+0

日期選擇器以當前日期作爲開始日期進行初始化,所以它應該一般不會返回空值,除非您明確將其設置爲沒有選定日期。如果問題試圖從不存在的對象獲取日期,因爲您沒有檢查選擇器,@acdcjunior應該添加該對象作爲答案,並且您應該接受它,因爲它很好被發現。 – adeneo 2013-05-12 19:54:01

回答

4

GETDATE()

返回:日期

如果沒有日期 被選擇返回日期選擇器或空當前日期。此方法不接受任何參數。

if($("#myDatepicker1").datepicker("getDate") === null) { 
    alert("empty"); 
} 
+0

空(jQuery)對象!== null – JJJ 2013-05-12 19:30:04

+0

@Juhana如果您正在檢查空的日期,則不需要。 – Bart 2013-05-12 19:35:07

+0

@Juhana檢查元素對象是否爲null,如果日期爲null。 – Nomad101 2013-05-12 19:35:50

0

對於任何人,錯過了我的代碼被打破!

var d = $("#myDatepicker1").datepicker("getDate"); 
if ($.isEmptyObject(d)) { 
    $("#dailySummaryDateSelector").datepicker("setDate", new Date()); 
} 

本來應該是:

var d = $("#dailySummaryDateSelector").datepicker("getDate"); 
if ($.isEmptyObject(d)) { 
    $("#dailySummaryDateSelector").datepicker("setDate", new Date()); 
} 

現在這個工程:

var d = $("#dailySummaryDateSelector").datepicker("getDate"); 
if (d == null) { 
    $("#dailySummaryDateSelector").datepicker("setDate", new Date()); 
}