Item dalam menu lungsur tersuai tidak berfungsi dengan betul dalam Yii 2
P粉268284930
2023-09-05 22:16:18
<p>Saya sedang mencipta fungsi senarai lungsur saya sendiri dalam Yii 2. Saya telah mencipta fungsi dan pandangan dan dalam paparan saya mempunyai berbilang item dalam borang lungsur turun saya. </p>
<pre class="brush:php;toolbar:false;"><?= $form->customDropDown($dpForm, 'color', [
'item' =>
[
'label' => 'merah',
'value' => 'merah',
'pilihan' =>
'style' => 'warna: merah'
]
]
[
'label' => 'biru',
'value' => 'biru',
'pilihan' =>
'style' => 'warna: biru'
]
]
]
</pra>
<p>Fungsi yang saya buat adalah seperti berikut (ia menggunakan dan terletak dalam ActiveForm): </p>
<pre class="brush:php;toolbar:false;"> fungsi awam CustomDropdown($model, $attribute, $items = [], $options = [])
{
$value = Html::getAttributeValue($model, $attribute);
$field = $this->field($model, $attribute, $options);
kembalikan $this->staticOnly ? $field : $field->dropDownList($items);
}
</pra>
<p>Masalahnya ialah apabila saya membuka lungsur turun saya, semuanya adalah pilihan atau sekumpulan pilihan, bukan hanya pilihan dengan label dan gaya. </p>
<p>Kesan paparan dalam <em>Inspektor</em>
<pre class="brush:html;toolbar:false;"><optgroup label='0'>
<nilai pilihan="label">merah</option>
<nilai pilihan="nilai">merah</option>
</optgroup>
<optgroup label="pilihan">
<nilai pilihan="gaya">warna: merah</option>
</optgroup>
</pra>
<p>Dan seterusnya. Kesan yang saya mahukan adalah seperti berikut: </p>
<pre class="brush:html;toolbar:false;"><option value="merah"style="warna: merah">merah</option>
</pra>
<p>Tetapi saya nampaknya tidak dapat mencapai kesan ini. </p>
Untuk mencapai output yang diingini, di mana setiap item dalam menu lungsur diwakili oleh satu teg
Kaedah dikemas kini: Dalam versi yang dikemas kini ini, kami menghantar tatasusunan $options terus kepada<option>
dengan label, nilai dan gaya yang ditentukan, anda perlu mengubah suai kod anda seperti berikut: Dalam fail paparan anda, kemas kini panggilan fungsicustomDropDown
untuk menghantar tatasusunan item dengan betul:dropDownList
方法,并使用array_column
Ekstrak pasangan nilai-label daripada tatasusunan $items