如何在codeigniter中的下拉菜单中存储选项值?

时间:2013-10-26 16:58:21

标签: forms codeigniter drop-down-menu input

我有一个包含四个选项的下拉菜单

$options = array(
              '0'  => 'Choose option...',
              '1'  => 'Option1',
              '2'    => 'Option2',
              '3'   => 'Option3',
              '4' => 'Option4'
            );
echo form_open('Welcome/create_user');
echo form_dropdown('dropdown_menu',  $options, '0');
echo form_submit('submit', 'Register');

当我使用时:

$this->input->post('dropdown_menu');

它给了我选项的索引(1,2,3..etc。)但是你怎么得到“option1”,“option2”等?

3 个答案:

答案 0 :(得分:2)

仅仅因为当您初始化下拉代码生成器时,将数组索引作为值。

但如果你想要价值,那么你可以这样做:

$options = array(
              '0'  => 'Choose option...',
              'Option1'  => 'Option1',
              'Option2'    => 'Option2',
              'Option3'   => 'Option3',
              'Option4' => 'Option4'
            );
echo form_open('Welcome/create_user');
echo form_dropdown('dropdown_menu',  $options, '0');
echo form_submit('submit', 'Register');

或者你必须在控制器中初始化数组

$options = array(
              '0'  => 'Choose option...',
              '1'  => 'Option1',
              '2'    => 'Option2',
              '3'   => 'Option3',
              '4' => 'Option4'
            );
$key = $this->input->post('dropdown_menu');
echo $options[$key];//use as you want

答案 1 :(得分:0)

在您捕获帖子数据的任何地方都可以访问$options数组。然后按键获取值:

$key = $this->input->post('dropdown_menu', TRUE);
$value = $options[$key];

答案 2 :(得分:0)

在codeigniter中创建下拉列表的最简单方法是将数据变量放在dropdown标记之外。请将以下代码复制并粘贴到页面中,以了解其工作原理并根据您的需求进行调整。

            <?php echo form_open(); ?>  

                <?php $data = array(
                            'option0'       =>  'Select Option...',
                            'option1'       =>  'Option 1',
                            'option2'       =>  'Option 2',
                            'option3'       =>  'Option 3',

                ); echo form_dropdown('options',$data,'','Options') ?>

            <?php echo form_close(); ?>