Я создаю новый widget
как это:
class Schedule extends CWidget
{
public $address = null;
public $order = null;//order
public function init()
{
if(isset($this->order))
$this->address = $this->order->address;
}
public function run()
{
$city = City::model()->findAll(array('condition'=>'is_active = 1','order'=>'name ASC'));
$this->render('my_schedule',array('city'=>$city));
}
}
а также view
за это widget
:
<?php
$form = new CActiveForm();
$form->id = 'checkout-form';
$form->enableAjaxValidation = true;
$form->clientOptions = array(
'validateOnSubmit' => true,
'validateOnChange' => false);
$order->address = $address;
?>
<?php if(is_array($city) && count($city) > 0) : ?>
<section class="persent70">
<p>
<?php
$this->widget('zii.widgets.jui.CJuiDatePicker',array(
'model'=>$order,
'attribute'=>'delivery',
'name'=>'delivery',
'options'=>array(
'showAnim'=>'slide',
'htmlOptions'=>array(
'class'=>'form-control',
'id' => 'delivery',
),
));
?>
<?php echo $form->error($order, 'delivery'); ?>
</p>
В этом случае календарь не открывается, но когда я использую CJuiDatePicker
в простом виде это datepicker
работает отлично.
Попробуй использовать $this->getController()->widget('zii.widgets.jui.CJuiDatePicker', array(....));
,
Других решений пока нет …