【问题标题】:yii dropdownlist Options valueyii 下拉列表选项值
【发布时间】:2016-03-16 05:51:14
【问题描述】:

我是 Yii 和学习的新手。我正在尝试在下拉列表中添加城市,一切似乎都运行良好。问题是我在下拉列表中获取城市 id 和城市名称,只有 id 是可选择和可见的,这不是要求。

Drop down List for city

代码如下:

 <div class="form-group">
        <?= $form->labelEx($model, 'user_city_id', array('class' => ' control-label')); ?>
        <div class="clearfix">
            <?= $form->dropDownList($model, 'user_city_id', CHtml::listData($model_cities, 'city_id', 'city_country_id','city_name'), array('class' => 'select2')); ?>
        </div>

$model 是包含 user_city_id 的用户模型

这就是我获取城市模型的方式:

$model_cities = Cities::model()->findAll();
array_unshift($model_cities, array());

【问题讨论】:

  • 你希望它如何渲染?

标签: php yii


【解决方案1】:
<?php 
echo $form->dropDownList($model, 'user_city_id', CHtml::listData(Cities::model()->findAll(), 'city_id', 'city_name') , array('prompt'=>'Select City'));
?>

你可以得到你想在你的下拉列表中表示的对:

Citites::model()->findAll(array('select'=>'city_id, city_name'));

上面将呈现带有值(city_id)、键(city_name)的下拉列表,告诉我这是不是你要找的。​​p>

【讨论】:

  • 添加此行返回此错误:call_user_func() 期望参数 1 为有效回调,数组必须恰好有两个成员
  • 不知何故我从CHtml::listData($model_cities, 'city_id', 'city_country_id','city_name') 中删除了“city_country_id”,现在我得到了城市价值。
  • array('empty'=>'Select City') 添加此行会出错。
  • @OmerJr 我已经编辑了答案,现在就试试吧。 (添加了数组('prompt'=>''),而不是数组('empty'=>''))
  • 仍然出现错误。无论如何,对值信息非常有帮助。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-02
  • 1970-01-01
  • 2013-05-12
相关资源
最近更新 更多