在下拉框中列出项目

时间:2013-08-19 05:04:07

标签: php css yii

我有一个数据库生成列表,我希望它显示在下拉框中。我目前正在试验YII,我不知道如何实现这一目标。我已经尝试过几次失败了。我的头发越来越瘦了。嘿。

以下是现在的样子;

enter image description here

以下是我的代码;

public function taskLangMenu() {
    $items = array();
    $langs = $this->languages();
    foreach ($langs as $code => $name)
        $items[] = array(
            'label' => $name,
            'url' => aUrl('/base/setting', array('name' => 'language', 'value' => $code)),
            'active' => $code == app()->language,
            'linkOptions' => array('name' => $code, 'class' => 'langLink'),
        );
    cs()->registerScript(__CLASS__, 'jQuery(".langLink").live("click",function(){
        $.ajax({
            url: $(this).attr("href"),
            method: "post",
            success: function() {
                location.reload();
            }
        });
        return false;
    });');

    return $items;

}

这是显示下拉列表:

if (count($this->param('languages')) > 1)
        $items['language'] = array(
            'class' => 'bootstrap.widgets.TbMenu',
            'items' => wm()->get('base.helper')->langMenu(),
            'htmlOptions' => array(
                'class' => 'pull-right'
            )
        );

我尝试在下面的代码中尝试显示下拉列表,它不起作用。

echo CHtml::dropDownList('taskLangMenu',1, $langs);

1 个答案:

答案 0 :(得分:0)

看看这是否是你想要的:http://jsfiddle.net/M8zAq/

HTML:

<ul>
    <li>English (US)</li>
    <li class="active">Malay</li>
</ul>

CSS:

ul{
    position:relative;
}

li{
    list-style:none;
    background-color:#EEE;
    display:none;
    width:150px;
    padding:5px;
    cursor:pointer;
    position:relative;
    height:25px;
    bottom:-35px;
}

li.active{
    display:block;
    position:absolute;
    top:0px;
}

JS:

$('li.active').hover( function(){
    $(this).siblings('li').show();
}, function(){
    $(this).siblings('li').hide();
});