【问题标题】:how to prevent multiple clicks on form button如何防止多次点击表单按钮
【发布时间】:2014-11-13 06:06:04
【问题描述】:

我正在使用下面的代码向我的数据库提交值。

<input id="btn_'.$temp['id'].'" value="Confirm" style="background: #409940; border-radius: 10px; color: white;" type="button" onclick="validaLink(\''.$temp['id'].'\');">

问题:

with in 2 secs ,多次点击以相同的值提交,直到div淡出。

我做了什么:
我试图在提交后禁用表单按钮。但我猜 2 个 onclick 事件不起作用。

建议/代码更正

【问题讨论】:

  • 考虑考虑使用会话和令牌phpro.org/tutorials/Preventing-Multiple-Submits.html 作为服务器端方法,并结合下面的其他 cmets。
  • onclick="javascript:window.open(\''.$temp['shorten'].'\'); this.disabled = true;"
  • 也许添加 this.disabled=true;在你的 window.open(\''.$temp['shorten'].'\');
  • This 回答你的问题:)
  • Nischaal 的评论和链接没有回答这个问题。 Joao Paulo 的回答最适合这个问题。

标签: javascript html


【解决方案1】:

试试这个

onclick="javascript:validaLink(\''.$temp['id'].'\'); this.disabled = true;"

【讨论】:

  • 请检查新代码.. 之前我在这里复制了错误的行
【解决方案2】:

以下代码将在第一次单击后禁用按钮的 onclick 事件处理程序,同时也会禁用按钮本身。

onclick="this.onclick=null;this.disabled = true;validaLink(\''.$temp['id'].'\');"

【讨论】:

  • 我面临的问题 .. 是,如果我点击 20 次,在按钮消失之前。 20 条记录将被添加到数据库中
  • 请检查新代码.. 之前我在这里复制了错误的行-
猜你喜欢
  • 2013-05-18
  • 1970-01-01
  • 2016-05-15
  • 2014-12-11
  • 1970-01-01
  • 1970-01-01
  • 2020-06-11
  • 1970-01-01
相关资源
最近更新 更多