2

編集時に生成された CRUD フォームに DatePicker を統合しようとしています 名前を配列として配置すると (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;'
     ),
     ));
4

3 に答える 3

2

ページに同じ名前のテキスト フィールドがあるかどうかを確認します。高度な検索フォームで。

同じページに同じ名前のフィールドが 2 つある場合、datepicker はそのうちの 1 つだけを表示します。

よろしく

于 2012-05-15T12:37:39.827 に答える
1

親 CJuiInputWidget classmodelのプロパティを使用して、yii に自動的に名前を決定させるので、次のようにすることができます。

$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'); ?>
于 2012-05-15T10:52:42.887 に答える
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'
            ),
        )
    );
?>
于 2013-02-15T14:45:24.070 に答える