用户
 找回密码
 入住 CI 中国社区
搜索
查看: 5679|回复: 5
收起左侧

[HELP] 为什么表单回到上一页,数据会消失??

[复制链接]
发表于 2010-8-22 13:33:33 | 显示全部楼层 |阅读模式
在CI里写个表单,报错时显示报错页.里面用history.back(1);返回上一页.

但是回到上一页后,表单中数据就消失了???

写一般php项目的时候好像还保留.....

有什么好办法吗?

用系统自带的set_value('field name')只能直接判断,然后返回表单.不能有报错页了
发表于 2010-8-22 13:38:33 | 显示全部楼层
ci在提交页面即可以显示错误,也可以做粘性表单,何必用history.back
p.s 楼主最后一句看不太懂,请详细解释一下
 楼主| 发表于 2010-8-22 13:45:15 | 显示全部楼层
粘性表单??是什么~~

我是说想实现,表单报错--报错页--再回到表单   这样一个过程

我看教程里都是表单报错后发到C这边,然后再到原单表...     

如果表单报错后发到C--报错页  之后再怎么让他回到原表单呢?????

如果能这样写当然很好.


history.back的情况也很奇怪啊???  如果能用history.back也可以比较简单
发表于 2010-8-22 13:56:01 | 显示全部楼层
粘性表单其实很好理解,比如填表的时候username框我填的xxx,点提交,提交页面报错,显示错误信息,此时username框的值仍然是xxx,其他填写的值也都保持不变,再改再提交仍然保持上一次填写的东西,就好像有粘性一样,不用因为一个地方填错,而全部重填
现在的网站都是粘性表单了,这比history.back()省掉了一个“后退”的步骤,用户体验更好,
当然。。。最好的还是阿贾克斯,扯远了
怎么实现粘性表单也很简单,在view里:
<?php echo form_input('username',set_value('username'))?>
<?php echo form_error('username')?>
这样你提交的时候,可以在提交页面显示错误,表单又具有粘性
 楼主| 发表于 2010-8-22 14:10:45 | 显示全部楼层
呵,谢谢....

现在麻烦的是我不是用一般的表单规则检查.  我在判断验证码

$this->securimage->check($inputCode) ==true

不用$this->form_validation->run()  好像set_value('username')也没用吧
发表于 2010-8-22 14:29:53 | 显示全部楼层
谁家表单没有验证码啊,爆汗
粘性表单和有没有验证码没有任何联系,有他照样操作
仔细看验证的手册,验证码完全可以放到->run()里面,和其他项目一样

本版积分规则