使用js控制表单重复提交(1加锁,2事件方式,3 EasyUI中解决表单重复提交)
- 方法一、
- var flag = true;
- $(function() {
- $("#interested").click(function() {
- beInterested();
- });
- });
- function beInterested() {
- //$("#interested").unbind("click");
- if (!flag) {
- alert("已感兴趣!");
- return;
- }
- if (flag) {
- var newNum = parseInt($("#beInterestedVal").attr("value"));
- // 点击之后就立即改变值
- $("#beInterestedVal").attr("value", newNum + 1);
- $("#beInterestedVal").text(newNum + 1);
- flag = false;
- }
- var copyrightid = $("#copyrightid").val();
- jQuery.ajax({
- type : 'POST',
- url : "/cartoon-web/copyRight/beInterestedIn",
- data : {
- "cid" : copyrightid
- },
- dataType : 'json',
- success : function(data) {
- if (data.result == 'success') {
- flag = false;
- // 设置设置不可以再点击
- // $("#interested").unbind("click");
- // alert("修改数据成功,要改变样式,不让此点再次点击!");
- } else {
- flag = true;
- alert(data.msg);
- }
- },
- error : function(XMLHttpRequest, textStatus, errorThrown) {
- alert("网络或者其它原因导致的错误!");
- flag = true;
- }
- });
- }
方法二、
- $("#publicCopyRight").click(function() {
- var b = validator.form();
- if (b == true) {
- submitForm();
- }
- });
- var lock = true;
- function submitForm() {
- var cid = $("#copyrightForm #cid").attr("value");
- /* 版权方名称 */
- var copyRightName = $("#copyRightName").val();
- /* 联系方式 */
- var contact = $("#contact").val();
- /* 作品名称 */
- var worksName = $("#worksName").val();
- /* 作品类别 */
- var worksCategory = $("#worksCategory").val();
- if (worksCategory == "请选择...") {
- worksCategory = "";
- }
- console.log("worksCategory = " + worksCategory);
- /* 授权价格 */
- var price = $("#price").val();
- /* 作品介绍 */
- var worksInfo = $(document.getElementsByTagName('iframe')[0].contentWindow.document.body).html();
- // alert(worksInfo);
- /* 授权范围 */
- var auScope = $("#auScope").val();
- /* 授权期限 */
- var auDeadLine = $("#auDeadLine").val();
- /* 本信息有效期限 */
- var termOfValidity = $('input[name="termOfValidity"]:checked').val();
- /* 表示是否同意的标识 */
- //console.log(document.getElementById("agreeFlag").checked);
- var agreeFlag = (document.getElementById("agreeFlag").checked == true) ? 1 : 0;
- if(agreeFlag == 0) {
- lock = false;
- alert("对不起,您得先同意酷漫网相关法律声明才可以发布版权信息!");
- $("#low-declare").css("color","red");
- } else {
- lock = true;
- $("#low-declare").css("color","#2d3e53");
- }
- /* 获取图片上传的路径 */
- var copyRightImage = $("#posterUrl").val();
- if (lock == true) {
- $("#publicCopyRight").unbind("click");
- lock = false;
- jQuery.ajax({
- type : 'post',
- url : url,
- data : {
- "cid" : cid,
- "copyRightName" : copyRightName,
- "contact" : contact,
- "worksName" : worksName,
- "worksCategory" : worksCategory,
- "price" : price,
- "worksInfo" : worksInfo,
- "auScope" : auScope,
- "auDeadLine" : auDeadLine,
- "termOfValidity" : termOfValidity,
- "agreeFlag" : agreeFlag,
- "copyRightImage" : copyRightImage,
- "mark" : "publishyes"
- },
- contentType : "application/x-www-form-urlencoded; charset=utf-8",
- dataType : 'json',
- success : function(data) {
- if (data.result == 'success') {
- // 成功之后还是不让提交,直接等待跳转。
- //console.log("/cartoon-web/copyRight/toPreviewPage?cid=" + data.cid);
- window.location = "/cartoon-web/copyRight/toPreviewPage?cid=" + data.cid;
- } else if (data.result == "fail") {
- alert(data.msg);
- lock = true;
- $("#publicCopyRight").bind("click",function() {
- submitForm();
- });
- }
- },
- error : function(XMLHttpRequest, textStatus, errorThrown) {
- alert("网络或者其它原因导致的错误!");
- lock = true;
- $("#publicCopyRight").bind("click",function() {
- submitForm();
- });
- }
- });
- }
- }
EasyUI中解决表单重复提交(主要看Add):
- /*
- * name :Zuoquan Tu
- * mail :tuzq@XXXXX.cn
- * date :2015/06/30
- * version :1.1
- * description:modified by tuzuoquan 2015/06/30
- * CopyRight (C) 2015-06
- */
- var PageHandler = (function($) {
- var isAddedFlag = false;
- return {
- searchClear:function(){
- $("#adPage-form").form("clear");
- },
- submitForm:function() {
- //获取当前页,总页数等信息
- var grid = $("#adPage-datagrid");
- var options = grid.datagrid('getPager').data("pagination").options;
- //表示当前页
- var curr = options.pageNumber;
- //表示总页数
- //var total = options.total;
- //表示每页的大小
- var pageRow = options.pageSize;
- //获得字段信息
- var adPageName = $("#adPage-form #adPageName").textbox("getValue");
- var adPageAddress = $("#adPage-form #adPageAddress").textbox("getValue");
- // 对table进行操作
- $("#adPage-datagrid").datagrid('load', {
- "page" : curr,
- "rows" : pageRow,
- "adPageName" : adPageName,
- "adPageAddress" : adPageAddress
- });
- },
- /**
- * 添加窗口中的重置按钮
- */
- clearForm:function() {
- $("#adPage-add-form").form("clear");
- },
- /**
- * 打开添加UI
- */
- addUI:function() {
- $("#adPage-add-window").window("open");
- },
- /**
- * 实现添加功能
- */
- add:function() {
- var isValid = $("#adPage-add-form").form('validate');
- if(!isValid) {
- $.messager.alert('验证错误提示','对不起,信息格式错误!');
- } else {
- if(PageHandler.isAddedFlag) {
- $.messager.show({
- title : '消息提醒',
- msg : '正在保存,请您耐心等待...',
- timeout : 5000,
- showType : 'slide'
- });
- return;
- }
- if(!PageHandler.isAddedFlag) {
- //获得字段信息
- var adPageName = $("#adPage-add-window #adPageName").textbox("getValue");
- var adPageAddress = $("#adPage-add-window #adPageAddress").textbox("getValue");
- var adFunctionNum = $("#adPage-add-window #adFunctionNum").numberbox("getValue");
- PageHandler.isAddedFlag = true;
- jQuery.ajax({
- type : 'POST',
- url : basePath + "/adPage/createAdPage",
- data : {
- "adPageName" : adPageName,
- "adPageAddress" : adPageAddress,
- "adFunctionNum" : adFunctionNum
- },
- dataType : 'json',
- success : function(data) {
- if(data.result == "success") {
- $("#adPage-add-window").window("close");
- $("#adPage-datagrid").datagrid('reload');
- PageHandler.isAddedFlag = false;
- } else if (data.result == "error") {
- $("#adPage-add-window").window("close");
- $.messager.show({
- title : '消息提示',
- msg : data.msg,
- timeout : 5000,
- showType : 'slide'
- });
- PageHandler.isAddedFlag = false;
- }
- },
- error : function() {
- $.messager.show({
- title : '消息提示',
- msg : '添加失败......',
- timeout : 5000,
- showType : 'slide'
- });
- PageHandler.isAddedFlag = false;
- }
- });
- }
- }
- },
- /**
- * 修改
- */
- editUI:function() {
- var row = $("#adPage-datagrid").datagrid('getSelected');
- if (row) {
- var id = row.id;
- $("#adPage-edit-window #id").val(id);
- $("#adPage-edit-window #adPageName").textbox('setValue', row.adPageName);
- $("#adPage-edit-window #adPageAddress").textbox('setValue', row.adPageAddress);
- $("#adPage-edit-window #adFunctionNum").numberbox('setValue', row.adFunctionNum);
- $("#adPage-edit-window").window("open");
- } else {
- $.messager.show({
- title : '消息提示',
- msg : '对不起,没有选中要修改的行......',
- timeout : 5000,
- showType : 'slide'
- });
- }
- },
- edit:function() {
- //1、判断校验是否成功
- var isValid = $("#adPage-edit-window").form('validate');
- //2、如果失败则提示修改失败
- if(!isValid) {
- $.messager.alert('验证错误提示','对不起,信息格式错误!');
- } else {
- //3、如果成功则提交修改
- var id = $("#adPage-edit-window #id").val();
- var adPageName = $("#adPage-edit-window #adPageName").textbox('getValue');
- var adPageAddress = $("#adPage-edit-window #adPageAddress").textbox('getValue');
- var adFunctionNum = $("#adPage-edit-window #adFunctionNum").textbox('getValue');
- jQuery.ajax({
- type : 'POST',
- url : basePath + "/adPage/updateAdPage",
- data : {
- "id":id,
- "adPageName" : adPageName,
- "adPageAddress" : adPageAddress,
- "adFunctionNum" : adFunctionNum
- },
- dataType : 'json',
- success : function(data) {
- if(data.result == "success") {
- $("#adPage-edit-window").window("close");
- $("#adPage-datagrid").datagrid('reload');
- } else if (data.result == "error") {
- $("#adPage-edit-window").window("close");
- $.messager.show({
- title : '消息提示',
- msg : data.msg,
- timeout : 5000,
- showType : 'slide'
- });
- }
- },
- error : function() {
- $.messager.show({
- title : '消息提示',
- msg : '修改失败......',
- timeout : 5000,
- showType : 'slide'
- });
- }
- });
- }
- },
- remove:function() {
- var row = $('#adPage-datagrid').datagrid('getSelected');
- if (row) {
- $.messager.confirm('Confirm',
- '确定删除该用户吗?',
- function(r) {
- if (r) {
- jQuery.ajax({
- type : 'POST',
- url : basePath + "/adPage/updateFlag",
- data : {
- "id" : row.id,
- "flag":0
- },
- dataType : 'json',
- success : function(data) {
- if(data.result == "success") {
- $("#adPage-datagrid").datagrid('reload');
- } else if(data.result == "error") {
- $.messager.show({
- title : '消息提示',
- msg : data.msg,
- timeout : 5000,
- showType : 'slide'
- });
- }
- },
- error : function() {
- $.messager.show({
- title : '消息提示',
- msg : '删除失败......',
- timeout : 5000,
- showType : 'slide'
- });
- }
- });
- }
- });
- }
- }
- }
- })(jQuery);
- var toolbar = [{
- text:'添加',
- iconCls:'icon-add',
- handler:PageHandler.addUI
- },'-',{
- text : '修改',
- iconCls : 'icon-edit',
- handler : PageHandler.editUI
- }, '-',{
- text : '删除',
- iconCls : 'icon-remove',
- handler : PageHandler.remove
- }];
使用js控制表单重复提交(1加锁,2事件方式,3 EasyUI中解决表单重复提交)的更多相关文章
- Struts2中解决表单重复提交
3. 表单的重复提交问题 1). 什么是表单的重复提交 > 在不刷新表单页面的前提下: >> 多次点击提交按钮 >> 已经提交成功, 按 "回退" ...
- EasyUI中在表单提交之前进行验证
使用EasyUi我们可以在客户端表单提交之前进行验证,过程如下:只需在onSubmit的时候使用return $("#form1").form('validate')方法即可,E ...
- Android Studio中解决jar包重复依赖导致的代码编译错误
在原本的代码中已经使用了OKHTTP和rxjava,然后今天依赖retrofit的时候一直报错 Program type already present: okhttp3.internal.ws.Re ...
- 用easy-ui中的表单操作实现一行操作和多行操作
http://blog.sina.com.cn/s/blog_8e50ede90101fff9.html
- java web解决表单重复提交问题
我们大家再进行web开发的时候,必不可少会遇见表单重复提交问题.今天就来给总结如何解决表单提交问题,欢迎大家交流指正. 首先我们在讨论如何解决表单重复提交问题之前先来解决三个问题:1.什么叫表单重复提 ...
- MVC中Form表单的提交
概述 Web页面进行Form表单提交是数据提交的一种,在MVC中Form表单提交到服务器.服务端接受Form表单的方式有多种,如果一个Form有2个submit按钮,那后台如何判断是哪个按钮提交的数据 ...
- 第二百二十一节,jQuery EasyUI,Form(表单)组件
jQuery EasyUI,Form(表单)组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解 EasyUI 中 Form(表单)组件的使用方法,这个组件不依赖于 ...
- JS控制,返回上一页之后强行刷新一次
网站建设过程中,提交页面后我们经常要用到window.history.go(-1)返回上一页,因为页面的缓存功能,我们只能返回上次操作的页面,但在删除等操作中,我们希望实时看到删除项目后的页面,这就要 ...
- 通过jdbc获取数据库中的表结构
通过jdbc获取数据库中的表结构 主键 各个表字段类型及应用生成实体类 1.JDBC中通过MetaData来获取具体的表的相关信息.可以查询数据库中的有哪些表,表有哪些字段,字段的属性等等.Met ...
随机推荐
- Python的一个解释凯撒密码的程序
#!/usr/bin/env python # -*- coding: utf-8 -*- ''' { Title:CaserCode Author:naiquan Type:crypto Detai ...
- 3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)
http://www.cnblogs.com/yangfengwu/p/8948935.html 学东西一定是打破沙锅学到底,有问题就解决问题,不要试图去回避或者放弃解决当前的问题,如果总是回避或 ...
- JDK、JRE和JVM的关系
JDK中包含了JRE,JRE中包含了JVM. 详解: JDK是JAVA的核心,包括JRE(JAVA 虚拟环境).编译器等,JDK的主流产品是由SUN公司开发的,JDK本身是用JAVA编写的,安装包的S ...
- 集群技术(三)MySQL集群深度解析
什么是MySQL集群 MySQL集群是一个无共享的(shared-nothing).分布式节点架构的存储方案,其目的是提供容错性和高性能. 数据更新使用读已提交隔离级别(read-committedi ...
- Netty 4源码解析:服务端启动
Netty 4源码解析:服务端启动 1.基础知识 1.1 Netty 4示例 因为Netty 5还处于测试版,所以选择了目前比较稳定的Netty 4作为学习对象.而且5.0的变化也不像4.0这么大,好 ...
- FORM开发之键性弹性域开发
1.创建表时带有键弹性域字段 SUMMARY_FLAG VARCHAR2(1) , /* 必须有此字段 */ ENABLED_FLAG VARCHAR2(1) , /* 必须有此字段 */ START ...
- 开发人员需要熟知的常用Linux命令Version、Kernel查看
当我们需要在Linux系统中安装一些软件而去下载安装文件时,一般都需要确认到底下载哪个版本的安装包,这就需要我们知道自己的Linux系统到底是什么版本.什么内核,常见的版本.内核查看命令或者文件有如下 ...
- SQL Server专家的10个秘诀(翻译加注解)
当你点开这篇文章的时候,如果觉得没有读下去的必要,也希望你能拉到最后看看那几行字! 原文出处:https://technet.microsoft.com/en-us/magazine/gg299551 ...
- T-SQL动态查询(2)——关键字查询
接上文:T-SQL动态查询(1)--简介 前言: 在开发功能的过程中,我们常常会遇到类似以下情景:应用程序有一个查询功能,允许用户在很多查询条件中选择所需条件.这个也是本系列的关注点. 但是有时候你也 ...
- Springmvc注解注入的简单demo
今天看了注解注入觉得确实简化了xml配置,一般情况下Spring容器要成功启动的三大要件分别是:Bean定义信息,Bean实现类,以及spring本身.如果采取基于XML的配置,Bean信息和Bean ...