以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]移动端开发如何设置重复提交? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=128703) |
-- 作者:ymjr2011 -- 发布时间:2018/12/13 13:18:00 -- [求助]移动端开发如何设置重复提交? 移动端如何设置重复提交?由于网络或个人手机或图片大小问题,导致提交的速度有点慢,以为没有变更就一直按提交导致有重复的数据 |
-- 作者:有点蓝 -- 发布时间:2018/12/13 15:02:00 -- 方法1、前端js使用ajex提交数据,在获取返回结果前停用提交按钮 2、后台服务端接收数据记录一下时间,如果短时间内接收到同一个编号的数据就不处理
|
-- 作者:有点甜 -- 发布时间:2018/12/13 15:57:00 --
一般直接这样处理即可:点击后,直接把按钮禁用。或者是用一个变量记录点击的次数,如果是第二次点击,提示正在提交,请稍后。
|
-- 作者:ymjr2011 -- 发布时间:2018/12/13 19:56:00 -- 谢谢 |
-- 作者:qwz405 -- 发布时间:2020/12/19 19:38:00 -- With wb.AddButtonGroup("form1","btg1",True) .Add("btn1", "确定", "submit") End With 老师,您好。第1次点击“确定”后,如果禁用此按钮? 我现在是在获取数据页,设置短时间内的提交次数: Dim i As Integer = DataTables("表A").SQLCompute("Count(*)", "工号 = \'***\' And 时间 > \'"& date.Now.AddMinutes(-5) &"\'") If i = 0 Then \'---成功提交,新建数据行. Else \'--->不新建数据,报错. End If 以上代码我单人测试是正常,但不知道使用人员增加,或者短时间不同使用者重复提交,或者使用者网络卡,会不会再出现重复提交的问题? |
-- 作者:有点蓝 -- 发布时间:2020/12/20 20:09:00 -- 禁用需要使用js提交:http://www.foxtable.com/mobilehelp/topics/0101.htm .Add("btn1", "确定", "button").Attribute= "onclick=\'myfunction()\'" js函数 function myfunction(){ document.getElementById("btn1").disabled= true; var result = submitAjaxForm(\'form1\',\'\',false); document.getElementById("btn1").disabled= false;
if (result ==\'OK\') {show(\'dlg1\')} else {showDialog(\'dlg2\',\'错误\',result)} } |
-- 作者:qwz405 -- 发布时间:2020/12/21 15:11:00 -- 老师,这个js函数是 btn1 可用(true)时, 不刷新页面提交数据,但这样能控制 btn1 不能用吗? 用我上面的提交次数,来控制是否重复,不知道是否可行? |
-- 作者:有点蓝 -- 发布时间:2020/12/21 15:15:00 -- 行不行测试过才知道。测试有什么问题? |
-- 作者:qwz405 -- 发布时间:2020/12/21 15:23:00 -- 目前,多人测试没人问题。 我现在开发的是年会上投票用,短时间内上百人同时提交,怕会出问题。看要怎么能控制,不能多创建。 |