我使用ion auth进行codeigniter,除了我不知道如何以与文本字段相同的方式编写下拉列表外,它的效果很好。
如果要在视图下显示文本字段,则必须发出以下命令:
<?php echo form_input($first_name);?>
这是控制器下的代码:
$this->data['first_name'] = array(
'name' => 'first_name',
'id' => 'first_name',
'type' => 'text',
'size' => 32,
'maxlength' => 32,
'value' => $this->form_validation->set_value('first_name'),
);
但是如何将下拉列表的值放入数组?
我尝试将此代码置于视图下:
<?php
$options = array(
'' => 'Select',
'Dr' => 'Dr.',
'Mr' => 'Mr.',
'Mrs' => 'Mrs.',
'Ms' => 'Ms.',
'Prof' => 'Prof.',
'Mr. & Mrs.' => 'Mr. & Mrs.',
);
echo form_dropdown('title', $options, '$title');
?>
我认为在视图下我应该编写代码:echo form_dropdown($title);
与文本字段相同但控制器下的代码是什么?
答案 0 :(得分:1)
首先在你的控制器中你可以做到:
$options = array(
'0' => 'Select',
'Dr' => 'Dr.',
'Mr' => 'Mr.',
'Mrs' => 'Mrs.',
'Ms' => 'Ms.',
'Prof' => 'Prof.',
'Mr. & Mrs.' => 'Mr. & Mrs.',
);
$data['options'] = $options
$this->load->view('your_view',$data);
在视图中:
echo form_dropdown('title', $options, set_value('title'));
此外,如果出现表单验证错误,您认为要保留下拉列表的值:
你只需要进行一些验证来保留下拉列表的值,例如:
$this->form_validation->set_rules('title','Titles','alpha');
如果未经过验证,即使使用set_value
,下拉列表也不会保留值