カスタムドロップダウンメニューの項目が Yii 2 で正しく動作しない
<p>Yii 2 で独自のドロップダウン リスト関数を作成しています。関数とビューを作成しました。ビューにはドロップダウン フォームに複数の項目があります。 </p>
<pre class="brush:php;toolbar:false;"><?= $form->customDropDown($dpForm, 'color', [
'アイテム' =>
[
'ラベル' => '赤'、
'値' => '赤'、
'オプション' => [
'スタイル' => '色: 赤'
]
]
[
'ラベル' => '青'、
'値' => '青'、
'オプション' => [
'スタイル' => '色: 青'
]
]
]
</pre>
<p>私が作成した関数は次のとおりです (ActiveForm を使用し、ActiveForm に配置されています): </p>
<pre class="brush:php;toolbar:false;"> public function customDropdown($model, $attribute, $items = [], $options = [])
{
$value = Html::getAttributeValue($model, $attribute);
$field = $this->field($model, $attribute, $options);
return $this->staticOnly ? $field : $field->dropDownList($items);
}
</pre>
<p>問題は、ドロップダウンを開くと、ラベルやスタイルを含むオプションだけでなく、すべてがオプションまたはオプションのグループになることです。 </p>
<p><em>Inspector</em> の表示効果は次のとおりです。</p>
<pre class="brush:html;toolbar:false;"><optgroup label='0'>
<option value="label">red</option>
<オプション値="値">赤</オプション>
</optgroup>
<optgroup label="オプション">
<option value="style">色: 赤</option>
</optgroup>
</pre>
<p>など。私が望む効果は次のとおりです:</p>
<pre class="brush:html;toolbar:false;"><option value="red" style="color: red">red</option>
</pre>
<p>しかし、この効果は達成できないようです。 </p>