我正在尝试在编辑时将DatePicker集成到生成的CRUD表单中 当我将名称作为数组(如textField生成)时,它不会弹出日历 如果我使用一个简单的名称(非数组)它可以工作...如果我完全退出名称它不起作用
我正在使用Yii 1.8
这是我的代码
$this->widget('zii.widgets.jui.CJuiDatePicker', array(
// 'name'=>'birthdate',
'name'=>"MainVendorsInvoices[issued_date]", // the name of the field
'value'=>$model->issued_date, // pre-fill the value
// additional javascript options for the date picker plugin
'options'=>array(
'dateFormat'=>'yy-mm-dd',
'defaultDate'=>$model->issued_date,
'buttonImage'=>Yii::app()->baseUrl.'/images/icons.date.png',
'buttomImageOnly'=>true,
'buttonText'=>'Select',
'showAnim'=>'fold',
'showOn'=>'button',
'showButtonPanel'=>false,
'yearRange'=>'1900',
'debug'=>true,
),
'htmlOptions'=>array(
'style'=>'height:20px;'
),
));
答案 0 :(得分:2)
查看页面上是否有相同名称的文本字段,例如。在高级搜索表单中。
如果同一页面上有两个具有相同名称的字段,则datepicker将仅显示其中一个字段。
此致
答案 1 :(得分:1)
让yii使用parent CJuiInputWidget class的model
属性自动为您确定名称,以便您可以这样做:
$this->widget('zii.widgets.jui.CJuiDatePicker', array(
'model'=>$model,
// 'value'=>$model->issued_date, // pre-fill the value
// instead of 'value' use 'attribute'
'attribute'=>'issued_date',
// additional javascript options for the date picker plugin
'options'=>array(
'dateFormat'=>'yy-mm-dd',
'defaultDate'=>$model->issued_date,
'buttonImage'=>Yii::app()->baseUrl.'/images/icons.date.png',
'buttomImageOnly'=>true,
'buttonText'=>'Select',
'showAnim'=>'fold',
'showOn'=>'button',
'showButtonPanel'=>false,
'yearRange'=>'1900',
'debug'=>true,
),
'htmlOptions'=>array(
'style'=>'height:20px;'
),
));
修改强>
由于您正在修改生成的表单,因此您可以将上面的部分放在gii生成的textField的位置,并保留此字段的其他行相同,例如:
<?php echo $form->labelEx($model,'issued_date'); ?>
<?php $this->widget('zii.widgets.jui.CJuiDatePicker'), array(// your datepicker options
);?>
<?php echo $form->error($model,'issued_date'); ?>
答案 2 :(得分:1)
<?php
$this->widget(
'zii.widgets.jui.CJuiDatePicker',
array(
'name' => 'order_date',
'value'=>Yii::app()->getRequest()->getParam("order_date"),
'language' => Yii::app()->language == 'et' ? 'et' : null,
'options' => array(
'showAnim' => 'fold', // 'show' (the default), 'slideDown', 'fadeIn', 'fold'
'showOn' => 'button', // 'focus', 'button', 'both'
'buttonText' => Yii::t('ui', 'Select form calendar'),
'buttonImage' => Yii::app()->request->baseUrl . '/images/calendar.png',
'buttonImageOnly' => true,
),
'htmlOptions' => array(
'style' => 'width:80px;vertical-align:top'
),
)
);
?>