帮我解决这个问题。 我正在使用yii。
我的表中有一个名为imei的列 - >暴民
现在在我看来,我在同一张桌子上创建了3个基于相同字段imei的activedropdown列表 - >暴民。
但值不同,即我在每个下拉列表中分组了十个值。
因此,用户可以从任何下拉列表中选择任何选项,然后进行处理。
问题是,当我单击按钮进行后期操作时,它只获取最后一个下拉列表值,如果未选择最后一个列表值,则它将传递空值。
Ex:我的'A'下拉列表包含1,2,3 我的'B'下拉列表包含4,5,6
当我通过模型发布操作和访问时 - &i; imei只获得'B'下拉列表值。
我需要的是获得所选选项的值而不管顺序如何。如果选择'A'列表值,则选择'A'。
如果两者都被选中,那么'B'。优先级从低到高。
你能帮我解决一下这个问题吗?
希望你明白或者是错误的做法?告诉我更好的方法。
答案 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)
我认为这是因为您使用相同的字段进行三次下拉。尝试更改表单中下拉列表的顺序并发布数据。我认为它会在你的表单中发布最后一个下拉值。原因是最后一个下拉值覆盖了先前选择的值。只是一个猜测。