我正在使用Yii
框架开发应用。我需要从下拉列表中选中复选框作为此列表的值。我一直在搜索这个,但没有找到任何东西。有人可以帮我完成这项任务吗?
答案 0 :(得分:4)
以下是Yii扩展程序的链接,它可以完全满足您的需求!
Yii Framework Extension: echmultiselect
除此之外,还有其他Yii扩展用于多选功能,这些功能也非常有趣!你可能也想看看这些!
答案 1 :(得分:2)
你可以这样做(在这个例子中你的模型必须有一个公共字段$ availableLanguages):
<?= $yourActiveForm->field($model, 'availableLanguages', ['template' => "
<div class='dropdown'>
<button
class='btn btn-default dropdown-toggle'
data-toggle='dropdown'
type='button'>
<span>Select languages</span>
<span class='caret'></span>
</button>
{input}
</div>"])->checkboxList(
[
'FR'=>'France',
'DE'=>'Germany'
],
[
'tag' => 'ul',
'class' => 'dropdown-menu',
'item' => function ($index, $label, $name, $checked, $value) {
return '<li>' . Html::checkbox($name, $checked, [
'value' => $value,
'label' => Html::encode($label),
]) . '</li>';
}
]); ?>
答案 2 :(得分:0)
您可以创建一个简单的文本框,当用户点击时,您会显示一个复选框列表
<div id="listOfDays">
<span><?php echo Yii::t('frontend','CHOOSE_DAY'); ?> </span>
</div>
<div id="itemslistOfDays" style="display:none;position:absolute;z-index:10;background-color:white; width:300px">
<?php
echo $form->checkBoxList($model, 'freq_details', array(
'1'=>Yii::t('frontend','MONDAY'),
'2'=>Yii::t('frontend','TUESDAY'),
'3'=>Yii::t('frontend','WEDNESDAY'),
'4'=>Yii::t('frontend','THURSDAY'),
'5'=>Yii::t('frontend','FRIDAY'),
'6'=>Yii::t('frontend','SATURDAY'),
'7'=>Yii::t('frontend','SUNDAY'),
)); ?>
</div>
您必须编写一些javascript或jquery才能隐藏,显示和绑定点击事件