2016-11-25 74 views
1

如何將圖標添加到DropdownList控件項目?Yii2。將圖標添加到DropdownList控件項目

我想有這個(額,開發了這一權利從semantic-ui

enter image description here

但使用插件後,這是相當困難添加一個圖標。

這裏是我的代碼和輸出

<?php $items = [ 
      '123' => '<i class="af flag"></i>aaa', 
      '124' => 'bbb', 
      '345' => 'ccc', 
     ] 
     ?> 
     <?=$form->field($model, 'country', [ 
      'template' => '{label} <div class="field">{input}{error}{hint}</div>', 
     ])->dropDownList($items, ['class' => 'ui dropdown selection', 'prompt' => 'Select Country']);?> 

enter image description here

什麼代碼段/庫可以幫助我完成這個任務?我需要任何實現,可以用作ActiveField

[UPD]

scaisEdge選項給這個 enter image description here

回答

2

DROPDOWNLIST是基本選擇下拉,這是一個基本的用戶界面控制的實施(HTML內容不被覆蓋)。您需要更高級的下拉選擇器,如Select2 Component(http://demos.krajee.com/widget-details/select2) ,並使用widget()方法調用使用該類的控件的構造。

$form->field($model, 'country', [ 
      'template' => '{label} <div class="field">{input}{error}{hint}</div>', 
    ])->widget(Select2::classname(),[ 
    'data' => $data, 
    'options' => ['placeholder' => 'Select a state ...'], 
    'pluginOptions' => [ 
     'templateResult' => new JsExpression("function format(state) { return '<img src=flag.png >';}"), 
     'templateSelection' => new JsExpression("function format(state) { return '<img src=flag.png >';}"), 
     'escapeMarkup' => $escape, 
     'allowClear' => true 
    ], 
]); 

看到一些例子中http://demos.krajee.com/widget-details/select2#usage-advanced

+1

只是爲了其他人。我做得更簡單,並將一些html加入標記,但我不建議採取這種方式。伊戈爾方式更好。 –