button按钮防重复提交(点击提交之后提交按钮变灰,操作执行完之后恢复)

jsp中form表单:

<form action="" id="form">
<table style="width:80%;height:80%;" border="1" cellspacing="0" cellpadding="0" align="center" valign="middle">
<tr>
<textarea rows="10%" name="content" id="content" style="width:100%;height:30%;">
</textarea>
<div id="abc"align="center">
<input class="button" name="button" id="button" type="button" value="提交" onclick="save()"/>
<input class="button" name="reset" id="reset" type="reset" value="重置"/>
</div>
</tr>
</table>
</form>

js中save方法:

function save() {
document.getElementById(‘button‘).disabled=true;
var content= document.getElementById(‘content‘).value;
if (lefttrim(content)=="") {
alert("内容不能为空");
document.getElementById(‘button‘).disabled=false;
return false;
}
var data = {};
data.body = {
messagesql : content,
};
var titlej = JSON.stringify(data);

$.ajax({
url:"/base/DBOperation/Operation",
type:"POST",
dataType:"json",
contentType:"application/json",
data:titlej,
success:function(res){
var retjson=JSON.stringify(res);
var eValue =eval(‘(‘+retjson+‘)‘);
var error=eValue["errors"];
alert(error);
document.getElementById(‘button‘).disabled=false;
// $(‘#response‘).val(error);
},
error:function(){
alert("返回失败!");
document.getElementById(‘button‘).disabled=false;
}
});
}

时间: 2024-10-08 23:49:22

button按钮防重复提交(点击提交之后提交按钮变灰,操作执行完之后恢复)的相关文章

点击按钮,弹出层位于屏幕中间,背景变灰

首先前台页面写一个button按钮,写一个层,点击按钮弹出层 <input type="button" value="选择填报单位" style="width: 150px; height: 30px; margin-bottom: 10px;font-size: 16px;font-family: 微软雅黑; " onclick="popupDiv('pop-div');" /> <div id="

js和jquery中嵌套(点击)事件中,防止点击多次父事件,子事件执行多次

1 $("#a").bind("click",function(){ 2 alert('a'); 3 $("#b").bind("click",function(){ 4 alert('b'); 5 }) : 6 }); 7 /*这样连续点击a按钮后,在点击一次b按钮,会重复a按钮点击的次数,我给的解释是,按钮a点击一次,会监听b点击的事件,这样点击多次后,会相应地监听b多次事件.所以,如果只是想执 行最后一次b的点击事件,应

防重复提交实现方案

在WEB系统操作中,往往会出现用户连续重复点击一个按钮导致重复提交,后台程序的同一个接口代码往往上一个请求还没执行完,下一个请求就到达了,而这两个请求又是请求和操作的同一条数据,就会出现业务上的逻辑错误,往往结果不可预料: 要解决重复提交带来的问题的解决方案有多种,不如网上有很多介绍怎么通过前端页面控制来解决重复提交,当然还有其他方式,这里我采用了通过后台程序代码利用redis做分布式锁的方式来防止重复提交,其思路就是在进入一个后端接口执行前先获取一个分布式锁,如果获取成功则上锁,然后执行业务代

struts2学习(15)struts2防重复提交

一.重复提交的例子: 模拟一种情况,存在延时啊,系统比较繁忙啊啥的. 模拟延迟5s钟,用户点了一次提交,又点了一次提交,例子中模拟这种情况: 这样会造成重复提交: com.cy.action.StudentAction.java: package com.cy.action; import java.io.File; import org.apache.commons.io.FileUtils; import com.cy.model.Student; import com.opensympho

防重复提交

// 防重复提交 定义全局变量 var checkingCorrespondflg = false; =============== 点击提交判断 if (!checkingCorrespondflg) { checkingCorrespondflg = true; } else { return false; } =============== 出错之后设置 checkingCorrespondflg = false;

A标签/按钮防止重复提交&amp;页面Loading制作

[实现原理] 防止重复提交与页面的提交时的Loading设置,均是在提交,但是尚未处理完成进行的操作,且提交为异步提交(同步提交不需要考虑).因此,其实现原理是在点击按钮或A标签时,将按钮/A标签置为不可用,在提交完成的回调函数中再将按钮/A标签置为可用:Loading原理是在点击提交时,生成Loading样式,在提交完成之后隐藏该样式. [同步]:提交请求->等待服务器处理->处理完毕返回 这个期间客户端浏览器不能干任何事 [异步]:请求通过事件触发->服务器处理(这是浏览器仍然可以作

AJAX防重复提交的办法总结

如果提交对象为按钮的话,可以对按钮设置disabled,此办法适应于按钮提交,此种方法简单粗暴,也是很多人用的办法,代如下: //在按钮提交之后和AJAX提交之前将按钮设置为禁用 $("input[type=submit]").attr('disabled',true) $.ajax({ url:'/post.php' data:{a:1,b,1} success:function(){ //在提交成功之后重新启用该按钮 $("input[type=submit]"

防止跨站请求伪造(CSRF)攻击 和 防重复提交 的方法的实现

CSRF的概率可以参考:http://netsecurity.51cto.com/art/200812/102951.htm 本文介绍的是基于spring拦截器的Spring MVC实现 首先配置拦截器: <mvc:interceptors> <mvc:interceptor> <!-- 匹配的是url路径, 如果不配置或/**,将拦截所有的Controller --> <mvc:mapping path="/xxx/**" /> <

button 按钮,结合onclick事件,验证和提交表单

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title> new document </ti