2011-08-23 72 views
4

我有一種情況,我試圖使用Trent Richardson的datetimepicker JQuery extension讓用戶一次選擇日期和時間。在JQuery中設置日期和時間datetimepicker

但在此之前,我想設置日期和時間,以便datetimepicker的輸入框顯示將從服務器設置的默認日期和時間。用戶然後在輸入框內點擊以調用datetimepicker,然後默認的日期和時間出現在datetimepicker上。如果需要,用戶可以覆蓋這些。

到目前爲止,在我的代碼,我有:

<script type="text/javascript"> 
     $(function(){ 
      $('.example-container > pre').each(function(i){ 
       eval($(this).text()); 
      }); 

      $('#example1').datetimepicker('setDate', (new Date(2010, 11, 20, 16, 03))); 

     }); 
</script> 

這將正常,但沒有設置日期時間,小時和分鐘滑塊。時間也顯示爲00 03而不是16 03.

任何人都可以告訴我我在做什麼錯或不這樣做,以便datetimepicker顯示正確的默認設置?

其他設置:

$('#example1').datetimepicker({              
         dateFormat: 'dd mm yy', 
         timeFormat: 'hh mm', 
         showMinute: false, 
         showSecond: false, 
         separator: ' ', 

        }); 

感謝

回答

1

如果你有一個日期值,日期選擇器應該默認爲該值預先填寫輸入字段。

從可用性的角度來看,我會使用這種方法,而不是更多的程序化解決方案。

+0

爲什麼哦爲什麼我一小時前沒有找到這個答覆:) – Blamkin86

0

問題是要處理您使用的日期和時間格式的自定義。如果您恢復原始設置,則datetimepicker的顯示應該是正確的。

1

,如果你談論的是來自特倫特·理查森的DateTimePicker,看看這個線程 https://stackoverflow.com/a/12645192/551811

根據我的經驗,即使你在文本框中預先填寫的日期,如果你想關閉日期選擇器對話框,而不輸入一個日期,它會用今天的值替換文本框中的值。解決方法是在onClose方法中設置文本框的值。在此示例中,值將包含您的原始值:

$('input.datetime').datetimepicker({ 
      onClose: function (value) { 
          $('input.datetime').val(value); 
         } 
     }); 
3

我知道這個問題已過時。但對於那些仍在尋找解決方案的人來說,我是如何做到的。 DatetimePicker插件是jQueryUI DatePicker的插件,因此我認爲DatePicker的所有選項和方法仍適用於DatetimePicker。

所以,如果你有ID爲「DTP」文本框,並要與「2013年5月31日下午7點30分」來初始化它,你會做什麼:

$("#dtp").datetimepicker({ 
defaultDate: "5/31/2013", // this is from jQueryUI datepicker 
hour: 19, 
minute: 30 
}); 

這應該突出更正日曆中的日期,並將滑塊設置爲選項中定義的正確的小時和分鐘。

希望這會有所幫助。

+0

謝謝!這正是我所期待的。 – Marcus

相關問題