1

件名のように。フィルタの 1 つにCGridViewと Yiiがあります。datepickerフォーマットを に設定してyy-mm-ddいますが、値を入力し、GridViewajax を使用してデータを調整した後、フォーマットは に変更されますdd.mm.yy。これが私のコードです:

array(
        'name' => 'confirmStart',
        'filter' => $this->widget('zii.widgets.jui.CJuiDatePicker', 
            array(
                'model' => $model,
                'attribute' => 'confirmStart',
                'language' => 'pl',
                'i18nScriptFile' => 'jquery.ui.datepicker-ja.js',
                'htmlOptions' => array(
                    'id' => 'Projects_confirmStart',
                    'dateFormat' => 'yy-mm-dd',
                ),
                'defaultOptions' => array(  // (#3)
          'showOn' => 'focus', 
          'dateFormat' => 'yy-mm-dd',
          'showOtherMonths' => true,
          'selectOtherMonths' => true,
          'changeMonth' => true,
          'changeYear' => true,
          'showButtonPanel' => true,
      )
            ),
            true),
    ),
4

1 に答える 1

3

これで問題が解決するかどうかはわかりませんが、CGridView で日付ピッカーを使用するときにいくつかの問題がありました。それを解決するには、datepicker を再インストールする必要がありました。

CGridView で:

'afterAjaxUpdate' => 'reinstallDatePicker',

Cgrid ビューの下に、次のスクリプトを追加します。

Yii::app()->clientScript->registerScript('re-install-date-picker', "
    function reinstallDatePicker(id, data) {
        $('#Projects_confirmStart').datepicker();
    }
");

それでも問題が解決しない場合は、次を試してください。

Yii::app()->clientScript->registerScript('re-install-date-picker', "
    function reinstallDatePicker(id, data) {
        $('#Projects_confirmStart').datepicker({ dateFormat: 'yy-mm-dd' });
    }
");

または(使用すべきものがわからない)

Yii::app()->clientScript->registerScript('re-install-date-picker', "
    function reinstallDatePicker(id, data) {
        $('#Projects_confirmStart').datepicker('option', 'dateFormat', 'yy-mm-dd');
    }
");

編集:

日付を元に戻すには、javascript を使用して日付を設定してみてください。

Yii::app()->clientScript->registerScript('re-install-date-picker', "
    function reinstallDatePicker(id, data) {
        $('#Projects_confirmStart').datepicker('option', 'dateFormat', 'yy-mm-dd');
        var start = $('#Projects_confirmStart').val();
        $('#Projects_confirmStart' ).datepicker( 'setDate', start );
    }
");

私は本当にそれがうまくいくかどうかわからない

于 2013-05-17T08:20:18.437 に答える