2013-06-27 56 views
1

我在顯示日期時遇到格式問題。CakePHP和DateTimePicker格式

我使用jQuery的DateTimePicker(http://www.malot.fr/bootstrap-datetimepicker/)。

在形式I具有

<div class="input-append date" id="dp"> 
    <?php 
     echo $form->input('date',array('type' => 'text','div' => false, 'label' => 'Date')); 
    ?> 
    <span class="add-on"><i class="icon-remove"></i></span> 
    <span class="add-on"><i class="icon-calendar"></i></span> 
</div> 

與含有日期形式的數據,而腳本是

<script> 
    $('#dp').datetimepicker({ 
    format: 'd MM yyyy', 
     autoclose: 1, 
     forceParse: 1, 
     todayBtn: 1, 
     minView: 2 
    }); 
</script> 

表格日期的格式爲 「YYYY-MM-DD」 和它顯示在不管腳本中定義的格式如何,該格式的日期字段「日期」即「2013-03-25」而不是「2013年3月25日」。

在另一種情況下,當用戶使用選取器選取日期時,根據腳本中的定義('d MM yyyy'),日期字段中顯示的格式是正確的。

由於預期的提交日期格式應該是「yyyy-mm-dd」,並且上面的代碼以格式「d MM yyyy」生成日期,所以第二個問題出現了。

我試過鏡場,

$this->request->data['OSSS']['date_display'] = $this->request->data['OSSS']['date']; 
echo $form->input('date_display',array('type' => 'text','div' => false, 'label' => 'Date')); 
在html

,並在腳本

linkField = 'OSSSdate'; 
linkFormat = 'yyyy-mm-dd'; 

,然後再提交日期是正確的格式,但仍然與表單日期問題格式和顯示格式。

有人有想法如何在datetimepicker中顯示時格式化表單日期嗎?

回答

1

我不確定你是否有工作。但是,這對我的作品......

<div class="control-group"> 
     <div class="input-append date controls" id="dp"> 
      <?php echo $this->Form->input('created',array('type' => 'text','div' => false, 'label' => false, 'wrapInput' => false));?> 

     <span class="add-on"><i class="icon-calendar"></i></span> 
    </div> 
</div> 

然後

$('#dp').datetimepicker({ 
    format: 'yyyy/MM/dd hh:mm:ss', //format: 'yyyy-MM-dd hh:mm:ss' either one works  
    language: 'en', 
    pick12HourFormat: true 
    }); 

這個工作對我來說,我的「創造」字段是時間字段。 MySQL 5.5