<div class="row">
<?php echo $form->labelEx($model,'end_time'); ?>
<?php
$this->widget('application.extensions.timepicker.timepicker', array(
'model'=>$model,
'name'=>'end_time',
));
?>
<?php echo $form->error($model,'end_time'); ?>
</div>
1、關於日期控件,Yii內置擴展(zii)中有CJuiDatePicker,使用例子如下:
- <pre name="code" class="php"> <div class="Input">
- <label>End time:<span class="required">(*)</span></label>
- <?php
- $this->widget('zii.widgets.jui.CJuiDatePicker', array(
- 'model'=>$deal,
- 'attribute'=>'end_time',
- 'options' => array(
- 'dateFormat'=>'yy-mm-dd', //database save format
- //'altFormat'=>'mm-dd-yy' //display format
- //'showAnim'=>'fold',
- //'yearRange'=>'-3:+3'
- ),
- 'htmlOptions'=>array(
- 'readonly'=>'readonly',
- 'style'=>'width:90px;',
- )
- ));?>
- </div></pre>
其中model和attribute參數必須同時提供,
這樣在控制器中對於該時間日期數據就無需額外的處理。
在一些複雜情況下,可以直接用name參數替換上面兩個參數組合,然後在控制器中對該數據輸入項做進一步處理後賦值給模型的屬性。
dateFormat用來控制日期數據保存時的格式,altFormat用來控制界面顯示格式;
showAnim用來控制jqueryui日曆控件的顯示動畫;
yearRange用來設置年份範圍。
2、在很多時候,需要精確到時分秒的時間,那麼就需要用到Yii的一個timepicker擴展:
http://www.yiichina.net/extension/timepicker/
把該擴展放到你的擴展路經下,比如extensions,在視圖中添加如下代碼:
- <?php
- $this->widget('application.extensions.timepicker.timepicker', array(
- 'model'=>$deal,
- 'name'=>'start_time',
- ));
- ?>
這個控件的日期格式是Y-m-d H:m:s和mysql的DATETIME類型匹配,如果你的數據庫中使用的是timestamp,那麼需要在控制器中額外轉換一下。
你還可以通過在css裏面定義button的樣式來更改該控件的按鈕顯示。