2013-10-21 58 views
0

如何在yii中隐藏CJuiDatePicker中的文本框。我找不到任何选项来隐藏文本框。我只想显示buttonImage。 我尝试了所有这些选项,但没有结果。yii CJuiDatePicker隐藏文本框

$this->widget('zii.widgets.jui.CJuiDatePicker', array(
          'model'=>$model, 
           'attribute'=>'date_first', 
           'options'=>array(
           'showAnim'=>'fold', 
           'dateFormat'=>'dd-M-yy', 
           'maxDate'=>'+0', 
           'minDate'=>'-3M', 
           'buttonImage'=>Yii::app()->baseUrl.'/ui/images/cal.gif', 
           'buttomImageOnly'=>true, 
           'buttonText'=>'Select', 
           'showOn'=>'button', 
           'showButtonPanel'=>false, 
           'disabled'=>true, 
            'htmlOptions'=>array(
             //'style'=>'hide;' 
            ),),true) 

回答

0

您可以使用'altField'选项将结果附加到隐藏字段。见我下面的例子:

$this->widget('zii.widgets.jui.CJuiDatePicker', array(
    'name'=>'datepicker_field' 
    'options'=>array(
     'showAnim'=>'fold', 
     'dateFormat'=>'dd-M-yy', 
     'maxDate'=>'+0', 
     'minDate'=>'-3M', 
     'buttonImage'=>Yii::app()->baseUrl.'/ui/images/cal.gif', 
     'buttomImageOnly'=>true, 
     'buttonText'=>'Select', 
     'showOn'=>'button', 
     'showButtonPanel'=>false, 
     'disabled'=>true, 
     'altField' => '#hidden-date', 
    ) 
)); 

echo $form->hiddenField($model, 'date_first', array('id'=>'#hidden-date')); 

我不知道这是否删除文本字段为好,如果不是你可以很容易地“隐藏”它使用的CSS(你必须仔细检查,如果该ID是正确的):

input#datepicker_field { 
    display: none; 
} 

这样你的输入字段就消失了,并存储在一个隐藏字段中。

+0

我能用css实现它,我还没有尝试你的第一个解决方案,一旦测试就会恢复。 – girish