2015-01-24 6 views
5

Sto eseguendo un DatePicker per una data di nascita in Yii2. Sto cercando di mostrare anche l'anno. Ho controllato i documenti JQuery http://jqueryui.com/datepicker/#dropdown-month-year e ho pensato che avrei potuto ottenere ciò con changeYear. Ma non sembra funzionare. Qual è il modo di fare questo? Questo è il mio codice attuale.Yii2 DatePicker

<?= $form->field($model, 'date_of_birth')->widget(DatePicker::className(),[ 
    'name' => 'date_of_birth', 
    'language' => 'en-GB', 
    'dateFormat' => 'yyyy-MM-dd', 
    'options' => [ 
     'changeMonth' => true, 
     'changeYear' => true, 
     'yearRange' => '1996:2099', 
     'showOn' => 'button', 
     'buttonImage' => 'images/calendar.gif', 
     'buttonImageOnly' => true, 
     'buttonText' => 'Select date' 
    ], 
]) ?> 

risposta

14

Si dovrebbe usare semplicemente clientOptions invece di options:

'clientOptions' => [ 
    'changeMonth' => true, 
    'yearRange' => '1996:2099', 
    'changeYear' => true, 
    'showOn' => 'button', 
    'buttonImage' => 'images/calendar.gif', 
    'buttonImageOnly' => true, 
    'buttonText' => 'Select date' 
], 
7

si può semplicemente utilizzare HTML5 tipo di data. È così semplice Non è necessario aggiungere i widget:

<?= $form->field($model, 'date_of_birth')->textField(['type' => 'date']);?> 

Questo aggiungerà il selettore di data.

+2

sua la soluzione migliore! –

0

È possibile utilizzare i seguenti codici:

use yii\helpers\Html; 
    use yii\widgets\ActiveForm; 
    use kartik\select2\Select2; 
    use yii\helpers\ArrayHelper; 
    use kartik\date\DatePicker; 
    use yii\widgets\Pjax; 

    <?=$form->field($model, 'columnName')->widget(DatePicker::classname(), [ 
     'language' => 'tr', 
     'value' => date('dd/mm/yyyy', strtotime('+7 days')), 
     'readonly' => true, 
     #'disabled' => true, 
     #'size' => 'lg', 
     #'type' => DatePicker::TYPE_COMPONENT_APPEND, 
     'options' => ['placeholder' => 'Başlangıç Tarihi Seç ...'], 
     'pluginOptions' => [ 
      #'orientation' => 'top right', 
      'format' => 'dd/mm/yyyy', 
      'todayHighlight' => true, 
      'todayBtn' => true, 
      'autoclose'=>true, 
     ] 
]);?>