如何在yii中将下拉列表放入CDetailView?

时间:2013-06-10 17:59:14

标签: yii

我需要将下拉列表放入我的CDetailView属性和属性值来自数据库,如果用户选择值下拉列表将重定向到具有所选值的另一个页面。

任何人都知道如何做到这一点,需要快速指导

2 个答案:

答案 0 :(得分:2)

<form>  <!-- A form to make the submit work. -->
<?php 
$profile = Profile::model()->findByPk(1);
$this->widget('zii.widgets.CDetailView', array(
    'data'=>$profile,
    'attributes'=>array('id','name',
        array(
            'label'=>'email addresses',
            'type'=>'raw',
            'value'=>CHtml::dropDownList('id', '', 
                CHtml::listData($profile->emails, 'id', 'value'),
                array(
                    'submit'=>['Site/Index'],
                    // 'onchange'=>'js:something'.  // You can trigger some javascript here instead of the submit - but it's more hassle if you ask me.
                    'prompt'=>'-- You\'ll need a prompt' // Because onchange wont fire for the initially selected item.
                )
            )
        ),
    ),
)); ?>
</form>

答案 1 :(得分:1)

您可以这样做:

array(
    'label'=>'Custom Label',
    'type'=>'html',
    'value'=>'<select id="goToList">
        <option></option>
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        </select>', // your HTML here
)

jQuery的:

$(function() {
    $('#goToList').change(function() {
        window.location='http://www.google.com'; // or wherever
    });
});