我试图在Yii2
中创建一个下拉列表选择列表,但考虑到没有示例,我发现documentation有点令人困惑。
有人试图通过一些例子来解释它,例如,如果我想创建一个如下所示的下拉列表,我将如何做?
样品:
<select name="foo" id="bar" onchange="run()">
<option value="">Select Pet Type</option>
<option value="fish">Fish</option>
<option value="dog">Dog</option>
<option value="cat">Cat</option>
<option value="lizard">Lizard</option>
</select>
答案 0 :(得分:1)
你可以试试这个:
<?= Html::dropDownList('foo', null, [
'fish' => 'Fish',
'dog' => 'Dog',
], ['id' => 'bar', 'prompt'=>'Select Pet Type', 'onchange' => 'run()']) ?>
或使用表单和模型:
<?= $form->field($model, 'attribute')->dropDownList([
'fish' => 'Fish',
'dog' => 'Dog',
], ['id' => 'bar', 'prompt'=>'Select Pet Type', 'onchange' => 'run()']) ?>
答案 1 :(得分:0)
你也可以检查它,它会运行。
<?php $dataList = Array('fish' => "Fish", 'dog' => "Dog", 'cat' => "Cat", 'lizard' => "Lizard"); ?>
<?php echo Html::dropDownList('foo', null, $dataList, [
'class' => 'form-control',
'id' => 'bar',
'prompt' => 'Select Pet Type',
'onchange' => 'run()'
]); ?>
答案 2 :(得分:0)
您可以使用模型,因为它有助于您分配值并执行验证和其他有用的功能,如beforeSave或beforeValidate使用模型。所以下面的代码对你有用。
<?php
echo $form->field($model, 'foo')
->dropDownList(
['fish' => 'Fish', 'dog' => 'Dog', 'cat' => 'Cat', 'lizard' => 'Lizard'],
['prompt' => 'Select Pet Type', 'id' => 'bar']
);
?>