JS【3522vip】 Ajax请求如何防止重复提交_javascript技巧_脚本之家

By admin in 3522vip on 2019年12月11日

好短期没写js代码了刚刚遇见那样的主题素材。大家系统非常多表单未有做幸免再一次提交的。

鉴于不想在后端那边管理,因为假若由后端管理的话,就必要在页面加载的时候给出二回性的token值,加大了支付的工作量不说,还易于忘记做那些,同一时间,ajax也不佳处理,须要付出战败的话相同的时间再次回到新的token值。

方今表单页面is_submit设为0

于是笔者想在,js那边出手。其实从前和前端提过,久久不见动静,就必须要弄块砖丢出去了。思路是,覆盖掉$.ajax,在那面管理掉幸免再一次提交的标题,而前者的业务支出不受影响,不改代码,无感知。

 SESSION_START(); $_SESSION['is_submit'] = 0;

笔者想构造的指标之生龙活虎,就在于简化专门的学业支付,屏蔽掉业务非亲非故的内部原因,让一线开辟安心写作业呢。

黄金时代经提交表单了,设当前’is_submit为1,假如刷新post.php,那么将实行else代码

/*** Created by xiayongsheng on 2016/6/12.*/;{var ajax = $.ajax;// 用于存储ajax的请求var ajaxState = {};var kinhomAjax = function () {var args = Array.prototype.slice.call;// url data 一致,// 应该将 url取出,data按键值排序,后将值拼接在一起,进行sha1得到的值作为指纹// 累先用 url作为指纹吧var hash = typeof args[0] === 'string'?args[0]:args[0].url;if (typeof ajaxState[hash] !== 'undefined') {if  {alert;}++ajaxState[hash];return $.Deferred();}ajaxState[hash] = 1;var def = ajax.apply;def.done {delete ajaxState[hash];});return def;};$.ajax = kinhomAjax;});
SESSION_START(); if (isset { if ($_SESSION['is_submit'] == '0') { $_SESSION['is_submit'] = '1'; echo "代码块,要做的事,代码...返回"; } else { echo "请不用重复提交PHP+SESSION防止表单重复提交"; } }

以上所述是笔者给我们介绍的JS
Ajax乞求什么防止再一次提交的有关文化,希望对我们有所扶助,要是大家有别的疑问请给作者留言,我会及时回复咱们的。在这里也特别感激大家对台本之家网址的支撑!

php 消除表单重复提交落成情势介绍

[导读]
重复提交是我们开垦中会常蒙受的多少个标题,除了大家运用js来防守表单的再度提交,同不常候还足以动用php来防护再一次提交哦。

双重提交是大家付出中会常遭受的一个难题,除了大家使用js来防备表单的重复提交,相同的时间还足以行使php来严防再一次提交哦。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2020 3522vip 版权所有