2016-04-15 6 views
0

Ich benutze ein ActiveForm in Yii2 für mein SearchModel. Nach dem Klick auf die Schaltfläche "Suchen" speichern die Formularfelder die vorherigen Werte, aber SorterDropdown wird aktualisiert.Yii2 merken Sortieroption nach dem Absenden der searchForm

<?php echo SorterDropdown::widget(['sort' => $dataProvider->sort, 
     'label' => $model->sortedBy($dataProvider->sort->attributes),]) 
?> 

SorterDropdown ist nur ein Wrapper von ButtonDropdown. Wie kann ich SorterDropdown merken, um die Sortierreihenfolge nach der Formularübergabe zu speichern (und anzuzeigen)?

class SorterDropdown extends LinkSorter 
{ 
    public $label; 
    protected function renderSortLinks() 
    { 
     $attributes = empty($this->attributes) ? array_keys($this->sort->attributes) : $this->attributes; 
     $links = []; 
     foreach ($attributes as $name) { 
      $links[] = Html::tag('li', $this->sort->link($name, ['tabindex' => '-1'])); 
     } 
     if (empty($this->label)) 
       $this->label = 'Sort'; 
     return \yii\bootstrap\ButtonDropdown::widget([ 
         'encodeLabel' => false, 
         'label' => $this->label, 
         'dropdown' => [ 
         'items' => $links, 
         ], 
     ]); 
    } 
+0

SorterDropdown? Ist es dein Widget? oder irgendeinen Open Source? – Midhun

+0

Es ist ein Wrapper für ButtonDropdown. Ich habe den Beitrag aktualisiert. – Dmytro

Antwort

0

Sie sollten dem li-Element eine Klasse hinzufügen, die den aktiven Zustand und den speziellen Stil in der CSS-Datei angibt.

Verwandte Themen