yii中的DropDown List问题

时间:2013-10-28 09:49:21

标签: php drop-down-menu yii

帮我解决这个问题。 我正在使用yii。

我的表中有一个名为imei的列 - >暴民

现在在我看来,我在同一张桌子上创建了3个基于相同字段imei的activedropdown列表 - >暴民。

但值不同,即我在每个下拉列表中分组了十个值。

因此,用户可以从任何下拉列表中选择任何选项,然后进行处理。

问题是,当我单击按钮进行后期操作时,它只获取最后一个下拉列表值,如果未选择最后一个列表值,则它将传递空值。

Ex:我的'A'下拉列表包含1,2,3 我的'B'下拉列表包含4,5,6

当我通过模型发布操作和访问时 - &i; imei只获得'B'下拉列表值。

我需要的是获得所选选项的值而不管顺序如何。如果选择'A'列表值,则选择'A'。

如果两者都被选中,那么'B'。优先级从低到高。

你能帮我解决一下这个问题吗?

希望你明白或者是错误的做法?告诉我更好的方法。

2 个答案:

答案 0 :(得分:0)

我猜您已设置了两个下拉列表的名称,然后表单已提交,将发布具有重复名称的最后一个字段的值。

解决方法:您可以为每个下拉列表设置单独的名称,例如下面的示例

<?php echo CHtml::dropDownList('Categories[A][]', '', $listData1, array('empty' => '(Select a category', '')); ?>

<?php echo CHtml::dropDownList('Categories[B][]', '', $listData2, array('empty' => '(Select a category', '')); ?>

提交表单后,您就可以访问数组中的POST

array 
  'Categories' => 
    array 
      'A' => 
        array 
          0 => string '1' (length=1) // selected value of drop down A
      'B' => 
        array
          0 => string '5' (length=1) // selected value of drop down B

取决于您想要的策略(更多优先级),您可以在此之后处理它们。

答案 1 :(得分:0)

我认为这是因为您使用相同的字段进行三次下拉。尝试更改表单中下拉列表的顺序并发布数据。我认为它会在你的表单中发布最后一个下拉值。原因是最后一个下拉值覆盖了先前选择的值。只是一个猜测。