2013-06-03 251 views
6

我有一個日期選擇器在輸入字段
當我第一次打開它的默認日期是今天的日期,這是我想要的。
然而,當我選擇日期,我清空輸入字段,
的日期選擇器仍然有其選定的日期,這是我不想:對

有沒有人有一個想法,爲什麼發生這種情況,以及如何我可以防止這種行爲?jquery UI日期選擇器重置日期

THX,

J.

+4

請張貼您的代碼。 – vlio20

+0

通過選擇日期和清除輸入字段,你的意思是什麼?是你直接清除輸入字段而不調用該字段上的datepicker並清除它? – dreamweiver

+1

使用$ .datepicker._clearDate(this);在這裏這是你的輸入字段 – Dineshkani

回答

35

重置日期選擇控件的日期正確的方法是這樣的:

$.datepicker._clearDate('#input_field_goes_here'); 

或者這樣:

$('#input_field_goes_here').datepicker('setDate', null); 

以最適合您的爲準。

+0

+1,很好的回答 – SagarPPanchal

+3

第二個是官方回答。使用私有API是一個壞主意。 –

+0

同意。第二個是最好的。 – nurider

2

清除日曆中的按鈕。

$("#txtCalendar").datepicker({ 
     showButtonPanel: true, 
     closeText: 'Clear', 
     onClose: function (dateText, obj) { 
      if ($(window.event.srcElement).hasClass('ui-datepicker-close')) 
       $("#txtCalendar").val(''); 
     } 
    }); 
+2

不錯,但是改了$(「#txtCalendar」)。val('');到$(this).val('');對於多個實例 –

0

只需添加該代碼

}).keyup(function(e) { 
    if(e.keyCode == 8 || e.keyCode == 46) { 
     $.datepicker._clearDate(this); 
    } 
}); 

您可以用退格鍵來清除域,即使它以只讀模式。 Source