文档章节

Jfinal防止重复提交

圣杰是也
 圣杰是也
发布于 2014/11/19 14:11
字数 233
阅读 39
收藏 0

public void add() { createToken("blogToken", 30*60); //过期时间设置为30分钟

render("add.html");

}

@Before(BlogValidator.class) public void save() { getModel(Blog.class).save(); list(); }

页面的话在你要防止重复提交数据的form中添加

<input type="hidden" name="blogToken" value="${blogToken}" />

接下来你可以在BlogValidator中的

protected void validate(Controller c) { validateToken("blogToken", "msg", "alert('上次已保存,请不要重复提交')"); } 也可以把validateToken放到action中如果返回true表示不是重复提交!

如果false表示是重复提交,可以

setAttr("msg", "alert('请不要重复提交数据')"); render("xxxx")或者调用list方法 return; 好像还有更方便的用法,请大家自己研究吧。另外,JFinal作者也是很有耐心的,有问必答的那种!

最后在add方法最后添加 if (result.msgs == "againsubmit") {

alertErrorMsgOnTR("请耐心等待,不要重复提交!");}

@Before(AgainSubmitValidator.class)

@Before添加到方法上面

要放到<form>里面

<input type="hidden" name="submitToken" value="${submitToken}" />

跳转到这个方法的页面

createToken("submitToken", 30*60);

© 著作权归作者所有

共有 人打赏支持
圣杰是也
粉丝 27
博文 15
码字总数 6489
作品 0
青岛
程序员
Jfinal token拦截器另类实现,防止表单重复提交

由于页面部分使用的div+ajax方式局部刷新,jfinal提供的token拦截器那种刷新页面的方式不太合适,所以想了个办法 还是使用 jfinal 原来的东西 在跳转到view之前,生成token 2.在页面中加入隐藏域...

厌恶自己
2015/07/12
0
1
OSC上关于Jfinal的提问整理(一)

看见Jfinal很火,就手痒痒了,想学一下,无奈入门较慢,没有找到比较全的文档。于是就经常看讨论区大家的提问与解答。后来就忽然萌生了整理下来的想法。其中的问题如果是@Jfinal 回答的,那我...

木川瓦兹
2013/04/23
0
21
JFinal Weixin 2.1 发布,微信极速 SDK

JFinal Weixin 发布四年多以来,以其简单性、稳定性,获得了大量用户的喜爱,这四年多以来 JFinal Weixin 紧跟微信官方动态,不断增加、完善功能,例如跟随本次微信官方发布的 XXE 漏洞,第一...

JFinal
07/10
0
0
jfinal cms v4.7.1 发布,升级 jfinal 到 最新 3.4 版本

经历了互联网研发人员加班模式,最近动静比较小(也可能是质量比较好了~!~); 该版本bug修复: jfinal 改为最新3.4版本 修复启动缓存设置不生效bug 其他细节修改 上一版本更新说明: 组织机...

Fly的狐狸
09/04
0
0
JFinal实现防止数据重复提交

我不怎么会表达,直接上代码吧! public void add() { createToken("blogToken", 30*60); //过期时间设置为30分钟 render("add.html");} @Before(BlogValidator.class)public void save() { ......

无聊的人们啊
2012/05/04
0
19

没有更多内容

加载失败,请刷新页面

加载更多

RxJS的另外四种实现方式(四)——性能最高的库(续)

接上一篇RxJS的另外四种实现方式(三)——性能最高的库 上一篇文章我展示了这个最高性能库的实现方法。下面我介绍一下这个性能提升的秘密。 首先,为了弄清楚Most库究竟为何如此快,我必须借...

一个灰
今天
1
0
麒麟AI首席科学家现世

8月31日,华为发布了新一代顶级人工智能手机芯片麒麟980,成为全球首款7nm工艺手机芯片,AI方面也实现飞跃,支持人脸识别、物体识别、物体检测、图像分割、智能翻译等。 虽然如今人人都在热议...

问题终结者
昨天
1
0
告警系统主脚本、告警系统配置文件、告警系统监控项目

告警系统主脚本 main.sh内容 #!/bin/bash#Written by aming.# 是否发送邮件的开关export send=1# 过滤ip地址export addr=`/sbin/ifconfig |grep -A1 "ens33: "|awk '/inet/ {pr...

芬野de博客
昨天
2
0
MySQL autocommit探究

-- sessionA:tx_isolation=REPEATABLE-READmysql> select connection_id();+-----------------+| connection_id() |+-----------------+| 28 |+-----------------+......

安小乐
昨天
8
0
c++多线程锁 Mutex  自动判断死锁

c++多线程锁可以使用absl::Mutex std::mutex这两种,下面是demo代码。 使用absl:Mutex的时候打印: [mutex.cc : 1338] RAW: Cycle: [mutex.cc : 1352] RAW: mutex@0x683b68 stack: @ 0x43856......

青黑
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部