YII学习第十九天,datepicker的使用
一,前端展示?
例1,最简单好用的方式。简单在于不需要$model?
<?php $this->widget('zii.widgets.jui.CJuiDatePicker',array('attribute'=>'visit_time','language'=>'zh_cn','name'=>'visit_time','options'=>array('showAnim'=>'fold','showOn'=>'both','buttonImage'=>Yii::app()->request->baseUrl.'/images/calendar.gif','buttonImageOnly'=>true,'minDate'=>'new Date()','dateFormat'=>'yy-mm-dd',),'htmlOptions'=>array('style'=>'height:18px',),));?>?例2,
?
<?php $this->widget('zii.widgets.jui.CJuiDatePicker',array('attribute'=>'visit_time','language'=>'zh_cn','model'=>$repairInfo,'name'=>$repairInfo->visit_time,'options'=>array('showAnim'=>'fold','showOn'=>'both','buttonImage'=>Yii::app()->request->baseUrl.'/images/calendar.gif','buttonImageOnly'=>true,'minDate'=>'new Date()','dateFormat'=>'yy-mm-dd',),'htmlOptions'=>array('style'=>'height:18px',),));?>?例3,
<div class="row"><?php echo $form->labelEx($model,'time'); ?><?php $this->widget('zii.widgets.jui.CJuiDatePicker', array('model'=>$model,'attribute'=>'time','options'=>array( //'showAnim'=>'slideDown', // 'show' (the default), 'slideDown', 'fadeIn', 'fold' 'showOn'=>'button', // 'focus', 'button', 'both' 'buttonImage'=>Yii::app()->request->baseUrl.'/images/calendar.png', 'buttonImageOnly'=>true, 'htmlOptions'=>array('readonly'=>"readonly"), 'changeMonth'=>true, 'changeYear'=>true, 'mode'=>'datetime', 'dateFormat'=>'dd/mm/yy','htmlOptions'=>array( 'size'=>43, 'value'=>(!empty($model->time))?(is_numeric($model->time))?date('d/m/Y',$model->time):$model->time:date('d/m/Y')),)));?><?php echo $form->error($model,'time'); ?></div>?其他参数,可以参考jquery datepicker手册,然后将其放在上面的options里,并用单引号引起来。?
http://jqueryui.com/demos/datepicker/?
如设置最小日期为当前日期:'minDate'=>'new Date()',?
二,后端获取?
可以通过上面$model来获取,对应数据库中的一个表。?
也可以使用js通过普通的方式获取其值。上面的日历,最终会生成一个input表单,用firebug查看其id,然后再获取该id的值,即可获取选择的日期。再通过get/post/ajax方式发送到后端。?