相关文章推荐
聪明的足球
·
[Arduino]烧写Arduino ...
·
4 月前
·
曾深爱过的黄瓜
·
awvs - FreeBuf网络安全行业门户
·
1 年前
·
风流倜傥的香烟
·
珲少的个人空间 - OSCHINA - ...
·
1 年前
·
冷静的萝卜
·
Druid链接池配置加密密码链接数据库 - ...
·
1 年前
·
聪明伶俐的跑步鞋
·
eclipse - ...
·
1 年前
·
Code
›
表单只能提交一次
https://blog.csdn.net/iteye_11009/article/details/81935829
心软的夕阳
6 月前
<p><input type="text" name="T1" size="22">
<input type="button" value="提交" οnclick="javascript:{this.disabled=true;document.form1.submit();}">
<input type="reset" value="重置" name="B2"></p>
</form>
用户在操作
表单
数据时往往会出现
表单
数据重复
提交
的问题,尤其实在Web开发中此类问题比较常见。刷新页面,后退操作以前的页面,单机多次按钮都会导致数据重复
提交
。此类问题是因为浏览器重复
提交
HTTP请求导致。 下面简单介绍以防止
表单
数据重复
提交
的四种解决方案。 一、在数据库添加唯一字段 在数据库建表的时候在ID字段添加主键约束,账号,名称的信息添加唯一性约束。确保
struts2的限制
表单
重复
提交
,除了可以限制
提交
外,还可以让程序员手动指定
表单
重复
提交
后,页面转到哪去!这点非常的方便了web开发! 其实原理也很简单,客户端这边保存
表单
的值,
表单
中通过标签多了个hidden域,value就是tokenId,而服务器那边则把tokenId保存在了session中,
一次
提交
后,服务器那变tokenId变了,而客户端保存的没变,2边不一致则不让
提交
了. 见图...
思路:当render页面的时候,将一个随机数render给本页面,并将该值赋值给一个form
表单
中hiden的input框。在
php
设置session,初始值为空,当
提交
第
一次
时将获取到的input值赋给session;再次
提交
,session值就会等于之前的随机数,则不能再次
提交
用到servlet就不得不提form
表单
的
提交
。如果一个页面只
提交
一次
数据那也就简单了。关键是平常的应用中很少有一个页面只应用
一次
的情况。一般遇到的情况是一个form
表单
提交
到多个servlet中、多个form
表单
提交
到一个servlet中。一个form
表单
提交
多个servlet中一般方法是在js文件中写一个改变form
表单
action属性的方法代码如下: function checkac
在
提交
表单
时,如果服务器响应速度慢,或者因为别的什么原因,导致按下
提交
出现“没反应”的情况,这是就要限制只允许
提交
一次
表单
以减轻服务器压力 有两种方式: 1.
提交
之后禁用按钮 2.
提交
之后取消后续的
表单
操作 document.getElementById('
提交
按钮').disable==true; //将按钮禁用,不过缺点是可以通过回车来
提交
推荐文章
聪明的足球
·
[Arduino]烧写Arduino BootLoader的几种方法_arduino bootloader烧写-CSDN博客
4 月前
曾深爱过的黄瓜
·
awvs - FreeBuf网络安全行业门户
1 年前
风流倜傥的香烟
·
珲少的个人空间 - OSCHINA - 中文开源技术交流社区
1 年前
冷静的萝卜
·
Druid链接池配置加密密码链接数据库 - 沧海一滴 - 博客园
1 年前
聪明伶俐的跑步鞋
·
eclipse - java.lang.ClassCastException: com.sun.net.ssl.internal.www.protocol.https.HttpsURLConnectionOldImpl cannot be cast to ja
1 年前