是因为表单提交后,页面会重新加载,导致下拉框的值被重置。为了解决这个问题,可以使用以下方法:
$options = array(
'value1' => 'Option 1',
'value2' => 'Option 2',
'value3' => 'Option 3'
);
echo form_dropdown('dropdown_name', $options, set_value('dropdown_name'));
在上面的例子中,set_value('dropdown_name')
会自动获取之前提交的值并设置为默认选中的值。
// 在表单提交之前保存下拉框的值到Session中
$this->session->set_userdata('dropdown_value', $this->input->post('dropdown_name'));
// 在重新加载的页面中获取Session中保存的值,并设置为下拉框的默认选中值
$dropdown_value = $this->session->userdata('dropdown_value');
$options = array(
'value1' => 'Option 1',
'value2' => 'Option 2',
'value3' => 'Option 3'
);
echo form_dropdown('dropdown_name', $options, $dropdown_value);
selected
属性来设置默认选中的值。例如:$options = array(
'value1' => 'Option 1',
'value2' => 'Option 2',
'value3' => 'Option 3'
);
echo form_dropdown('dropdown_name', $options);
// 使用JavaScript来设置下拉框的值
echo "<script>document.getElementsByName('dropdown_name')[0].value = 'value2';</script>";
以上是三种常用的解决方法,根据具体情况选择适合的方法来解决在Codeigniter中提交表单后无法保留下拉值的问题。
关于Codeigniter的更多信息和使用方法,可以参考腾讯云的Codeigniter产品介绍页面:Codeigniter产品介绍
领取专属 10元无门槛券
手把手带您无忧上云