PHP CodeIgniter - 使用foreach下拉列表不显示"已选择"值

pep*_*epe 2 php forms codeigniter drop-down-menu

我正在为我的下拉列表生成选项

// view.php
foreach ($plants as $row):
    $options[$row->plant_id] = $row->plant_name;
endforeach;
Run Code Online (Sandbox Code Playgroud)

然后在view.php的HTML部分中降低

//view.php
$js = 'onChange = "plantDateDelete(\'/size/get_dates_for_plant/\'+this.value);"';
echo form_dropdown('plant_id', $options, 'Select', $js);
Run Code Online (Sandbox Code Playgroud)

下拉列表显示选项确定,但它不会将"选择"显示为"已选择"/默认值.它显示了数组的第一个选项.

HTML源代码也显示"Select"in form_dropdown被忽略.

我真的需要这个下拉列表以"选择"作为默认值显示,以强制用户激活该onChange功能.

知道这里发生了什么或如何解决这个问题?

Jac*_*cob 7

您需要在$ options数组中使用默认选项...

所以在你的foreach之前,做:

$options = array('Select');
Run Code Online (Sandbox Code Playgroud)

我应该补充一下,这将在下拉列表中显示值0,但作为其数组中的第一个元素,默认情况下将选中它,除非另一个选项作为默认值传递.

如果要将此值显式设置为默认值,则将0作为默认参数传递.