首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Codeigniter中提交表单后无法保留下拉值

是因为表单提交后,页面会重新加载,导致下拉框的值被重置。为了解决这个问题,可以使用以下方法:

  1. 使用Codeigniter的表单辅助函数(form helper):Codeigniter提供了表单辅助函数,可以方便地生成表单元素,并自动填充之前提交的值。在下拉框的选项中,可以使用第三个参数来指定默认选中的值。例如:
代码语言:txt
复制
$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')会自动获取之前提交的值并设置为默认选中的值。

  1. 使用Session来保存下拉框的值:在表单提交之前,将下拉框的值保存到Session中。在重新加载的页面中,从Session中获取之前保存的值,并设置为下拉框的默认选中值。例如:
代码语言:txt
复制
// 在表单提交之前保存下拉框的值到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);
  1. 使用JavaScript来设置下拉框的值:在重新加载的页面中,使用JavaScript来设置下拉框的值。可以通过在下拉框元素上添加一个selected属性来设置默认选中的值。例如:
代码语言:txt
复制
$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产品介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

CI一些优秀实践

一种简易的方法是在 application/config/database.php 文件设置 db_debug 的值为一个常量 MP_DB_DEBUG,当网站在运行中,如下设置: ini_set('display_errors...安全问题很重要 在接收任何数据到你的程序之前,不管是表单提交的 POST 数据、COOKIE 数据、URI 数据、XML-RPC 数据、还是 SERVER 数组中的数据,我们都推荐你实践下面的三个步骤:...CI 2.0 将内置 CSRF 检查,在 Google 上搜索 "CSRF tokens" 学习更多关于在保护表单提交和 URL 链接的知识,在 Ajax 应用方面可以搜索 "double cookie...通过保护你的邮件表单,评论表单,以及其他各种免费用户提交的数据来防止垃圾信息,一个简单的方法是只允许一个IP/User客户端在一分钟之内只能提交一次,一个比较好的方式是使用 Captcha ,CI2中内置了一个...紧接着codeigniter载入了第一个类库,Benchmark,这个类库最简单的一个应用就是计算网页从开始到编译结束所花掉的时间,所以您在编译开始的地方打上一个标记,渲染结束后再打上一个标记,就可以算出其中花费的时间了

3.4K50

salesforce零基础学习(七十四)apex:actionRegion以及apex:actionSupport浅谈

我们在开发中,很难会遇见不提交表单的情况。常用的apex:commandButton,apex:commandLink,apex:actionFunction,apex:actionSupport。...apex:actionRegion用于apex:form中涉及到表单提交指定区域块或者组件的内容,如果一个表单提交请求需要提交整个页面,则不必使用apex:actionRegion。  ...apex:actionRegion尽管可以用于ajax请求的时候,指定区域提交,但是却无法定义请求完成后的reRender区域,reRender操作仍然在相关的控件的reRender部分来操作,即apex...其实上面的vf代码是有问题的,当选择了下拉框,右侧的下拉框的值也不修改成yyy,原因是这样的: 当actionSupport执行时,会提交整个form表单,因为上面有一个required的字段,所以导致提交表单失败...,没有走action对应的后台的的method,所以没有更新下拉框里面的值,这种情况有两种可以修改的方式,1是将actionSuuport设置成immediate="true"方式,可以忽略表单的validation

1.7K70
  • HTML第二天

    ,删除其他 colspan–跨列合并左右合并→只保留最左的,删除其他 你 好 ---- 3️⃣表单标签 ---- input...” multiple>** multiple–多文件选择 按钮:**** 提交按钮,提交数据给后端服务器 重置按钮,恢复表单默认值 ** type=”button” – 可以设置 type 属性值 submit–提交按钮 reset–重置按钮 button–普通按钮 谷歌浏览器中 button 默认是提交按钮...:下拉菜单的默认选中 textarea 文本域标签 textarea— 提供可输入多行文本的表单控件 textarea 语法 cols:规定了文本域内可见宽度 rows:规定了文本域内可见行数 label...(如:文本)包裹起来 2、在表单标签上添加 id 属性 3、在 label 标签的 for 属性中设置对应的 id 属性值 没有语义的布局标签 - div 和 span 实际开发网页时会大量频繁的使用到

    3K20

    一篇文学会商用可编辑问卷表单制作【iVX 十二】

    ;在此需要注意的是,一定要将内容添加至当前对象数组中的末尾,否则将会不匹配: 随后我们在表单内容行中设置背景属性值为组件属性对象数组的某一行的某个值: 接下来设置行号为当前序号: 字段名在单引号中输入背景色即可...首先我们在属性栏下添加一个 if 判断,在 if 判断下添加一个行名为下拉菜单,在其内部添加一个文本作为提示、一个输入框作为选项填入、一个按钮作为输入框输入内容的提交: 页面中呈现效果如下: 接着我们在当前界面下创建一个数值文本...,用于判断是否是下拉菜单,默认为0,若选中的组件为下拉菜单那么该值将会为 1: 那么此时在 if 判断中应该判断是否下拉选项这个变量的值为 1,为 1 时则显示下拉选项添加页面元素: 接着我们回到表单内容事件面板中...点击提交为其添加事件: 此时事件的更改方式与添加背景色类似,但是由于下拉菜单选项会有多个值,此时还需添加一个一维数组,在此命名这个一维数组为下拉菜单内容: 我们首先在提交按钮中为这个下拉菜单内容进行赋值...1: 最后给提交按钮添加提交事件: 预览页面进行内容提交后将会在已填写表单数据库中看到具体内容: 最后在前台页面下创建一个变量用于记录点击的父表内容: 当我们点击填写按钮时,将会设置该变量的值为当前点击表单的

    6.7K30

    商城项目-品牌的新增

    这样的选框,在Vuetify中并没有提供(它提供的是基本的下拉框)。因此我已经给大家编写了一个无限级联动的下拉选框,能够满足我们的需求。 ?...因为品牌LOGO只有一个 pic-width和pic-height:可以控制l图片上传后展示的宽高 最终结果: ? 1.1.4.5.按钮 上面已经把所有的表单项写完。最后就差提交和清空的按钮了。...$refs中只有一个属性,就是myBrandForm 我们在clear中来获取表单对象并调用reset方法: methods:{ submit(){ // 提交表单...1.1.6.表单提交 在submit方法中添加表单提交的逻辑: submit() { // 1、表单校验 if (this....,letter ,...params} = this.brand; // 3、数据库中只要保存分类的id即可,因此我们对categories的值进行处理,只保留id,并转为字符串

    2.6K10

    HTML‘冷’知识总结

    ,国内一般这种 10.form 表单:action 属性 定义表单数据提交地址;method 属性 定义表单提交的方式,一般有 “get” 方式和 “post” 方式 1.action 属性 定义表单数据提交地址...type="hidden" 定义一个隐藏的表单域,用来存储值 3.value属性: 定义表单元素的值 4.name属性 :定义表单元素的名称,此名称是提交数据时的键名 5.为提高用户的体验...,可以加id属性,在段集标签等也可以激活相关控件 6.textarea标签 定义多行文本输入框 7.select标签 定义下拉表单元素 8.option标签 与标签配合,定义下拉表单元素中的选项...2、tr 标签:定义表格中的一行 3、td和th标签:定义一行中的一个单元格,td代表普通单元格,th表示表头单元格,它们的常用属性如下: align 设置单元格中内容的水平对齐方式,设置值有...rowspan 设置单元格垂直合并,设置值是数值 声明:本文为原创,作者为 对弈,转载时请保留本声明及附带文章链接:http://www.duiyi.xyz/c%e5%ae%9e%e7%8e%b0%

    88320

    Rc-form: 消失的“Ta”

    首先,下拉选择框 A 选中 A1 并填写字段 C、D,将 A 切换到 A2 后填充表单数据,点击提交。...bug场景.png 小 H 发现表单确实无法提交,于是便在提交按钮的点击回调函数中打了断点想一探究竟,这一调试可把小 H 愁坏了:validateFields 的回调函数中存在 D 字段的必填校验错误。...改完代码后,小 H 再次按照 bug 触发的链路操作了一番。不出所料,这次表单可以正常提交了,于是小 H 在提交完代码后便心满自足地走去了餐厅。...小 H 十分不解,便又在提交按钮的点击回调函数中打起了断点,原来,当 A 从 A1 切换到 A2 提交后,不仅执行了 D 字段的校验函数,同时 D 字段的值也被保留了下来,并随着提交接口保存到了后端。...首先,从提交按钮点击回调的调试中我们发现,C 字段的值在我们从 A1 切换到 A2 后会正常消失,而且 C 的校验函数在提交时也并不会被执行。为什么 C 会消失,而 D 不会?

    22010

    JavaWeb01轻松掌握HTML(Java真正的全栈开发)

    根据不同的type属性值,输入字段有很多种形式,输入字段可以是文本字段,复选框,掩码后的文本控件,单选按钮,按钮等....:定义可选择多个选项 标签:定义下拉列表中的项(下拉项) 标签需要位于标签内部 属性: value:定义送往服务器的选项值 selected:定义选项为选中状态...四.html表单标签: 在我们的网络生活中,经常会用到登录注册页面,那么这些页面是通过那些标签实现的呢?接下来就让我们来看下表单标签....根据不同的 type 属性值,输入字段拥有很多种形式.输入字段可以是文本字段、复选框、掩码后的文本控件、单选按钮、按钮等等....size:定义下拉列表中可见选项的数目 multiple:定义可选择多个选项 option 用于定义下拉列表中的选项.

    5.2K50

    如何在HTML的下拉列表中包含选项?

    为了在HTML中创建下拉列表,我们使用命令,它通常用于收集用户输入的表单。为了在提交后引用表单数据,我们使用 name 属性。如果没有 name 属性,则下拉列表中将没有数据。...用于将下拉列表与标签相关联;id 属性是必需的。要在下拉列表中定义选项,我们必须在 元素中使用 标签。...它也无法接收焦点,并且在 Tab 键时将被跳过。标签发短信标签文本 定义使用时要使用的标签选择选择定义页面加载时要选择的默认选项。...价值发短信指定要发送到服务器的选项的值倍数倍数通过使用,可以一次选择多个属性选项。名字名字它用于在下拉列表中定义名称必填必填通过使用此属性,用户在提交表单之前选择一个值。...大小数此属性用于定义下拉列表中可见选项的数量价值发短信指定要发送到服务器的选项的值自动对焦自动对焦它用于在页面加载时自动获取下拉列表的焦点例以下示例在HTML的下拉列表中添加一个选项 <!

    27820

    讲解-加载静态页

    讲解 本教程旨在向您介绍CodeIgniter框架和MVC体系结构的基本原理。它将向您展示如何以逐步的方式构造基本的CodeIgniter应用程序。 在本教程中,您将创建一个基本的新闻应用程序。...接下来,您将创建一个新闻部分,该部分将从数据库中读取新闻项。最后,您将添加一个表单以在数据库中创建新闻项。...创建新闻项,这将引入更高级的数据库操作和表单验证。 结论,这将为您提供进一步阅读和其他资源的一些指示。 享受您对CodeIgniter框架的探索。...在页头模板文件中,$title 变量代表页面的自定义标题,它是在方法中被赋值的,但并不是直接赋值给 title 变量,而是赋值给 $data 数组中的 title 元素。...所以控制器中 $data['title'] 的值,就等于视图中 $title 的值。 路由 控制器已经开始工作了!

    3.6K10

    想知道HTML语法结构?看这一篇就够了(超全解析html语法)

    段落标记在段前和段后各添加一个空行,而定义在段落标记中的内容不受该标记的影响。 3.标题标记 在HTML标记中设定了6个标题标记,分别为、、、、、。...HTML表单标记 1.…表单标记 表单标记以标记开头,以标记结尾。在表单标记中可以定义处理表单数据程序的URL地址等信息。...普通按钮 radio 单选选项 hidden 隐藏域 checkbox 复选框 image 图像域 例:创建一个index.html的文件,在该文件的标记中添加一个表单,并且在该表单中应用标记中添加文本框...…下拉列表标记 标记可以在页面中创建下拉列表,此时的下拉列表是一个空的列表,要使用标记向列表中添加内容。.../textarea> 标记的属性说明如下表所示: 属性 描述 name 用于指定多行文本框的名称,当表单提交后,在服务端获取表单数据时应用 cols 用于指定多行文本框显示的列数(宽度) rows 用于指定多行文本框显示的行数

    5.8K30

    4、表单和高级选择器

    \assetis\表单.png)] 现实中的表单,类似我们去银行办理信用卡填写的单子。 如下图 目的是为了收集用户信息。 在我们网页中, 我们也需要跟用户进行交互,收集用户资料,此时也需要表单。...在HTML中,一个完整的表单通常由表单控件(也称为表单元素)、提示信息和表单域3个部分构成。 表单控件: 包含了具体的表单功能项,如单行文本输入框、密码输入框、复选框、提交按钮、重置按钮等。...表单域: 他相当于一个容器,用来容纳所有的表单控件和提示信息,可以通过他定义处理表单数据所用程序的url地址,以及数据提交到服务器的方法。如果不定义表单域,表单中的数据就无法传送到后台服务器。...7、表单域 在HTML中,form标签被用于定义表单域,即创建一个表单,以实现用户信息的收集和传递,form中的所有内容都会被提交给服务器。...创建表单的基本语法格式如下: 提交方式" name="表单名称"> 各种表单控件 常用属性: Action 在表单收集到信息后

    7510

    HTML表单(下)

    然后在组件的list属性里指定标签的id属性值即可实现下拉框的效果,示例: ? 运行结果: ?...将表单提交到服务器页面 在html5中表单提交页面可以在submit中指定,要注意的是:html5之前的版本不支持这么写,这是html5才有的写法。...在submit中指定表单的提交页面的话,就可以实现不同的submit设置不同的表单提交页面。...除了可以在submit中指定表单提交页面外,还可以使用formmethod属性来指定提交的方式,同样的有formtarget属性用来指定表单提交后显示的窗口。...formmethod设置为post后,服务器接收页面就不会显示数据,数据被隐藏了: ? value属性在单选框中的应用示例: ? 运行结果: ? 服务器就会把name值指向value值: ?

    2.6K20
    领券