0
SearchModelのYii2でActiveFormを使用しています。検索ボタンをクリックすると、フォームフィールドは以前の値を記憶しますが、SorterDropdownはリフレッシュされます。Yii2はsearchFormをサブミットした後に覚えておきます。
<?php echo SorterDropdown::widget(['sort' => $dataProvider->sort,
'label' => $model->sortedBy($dataProvider->sort->attributes),])
?>
SorterDropdownはButtonDropdownの単なるラッパーです。 フォームのサブミット後にソート順を覚えて表示するにはどうすればよいですか?
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,
],
]);
}
SorterDropdown?それはあなたのウィジェットですか?または任意のオープンソースのもの? – Midhun
ButtonDropdownのラッパーです。私は投稿を更新しました。 – Dmytro