在 Rails 项目中,我需要防止 link_to_remote 被双击。看起来 :before 和 :after 是我唯一的选择——它们分别被添加/附加到 onclick Ajax 调用中。但是,如果我尝试类似:
:before => "self.stopObserving()"
Ajax 永远不会运行。如果我在运行 Ajax 之后尝试它,但链接永远不会停止观察。
我见过的解决方案依赖于创建一个变量并阻止整个表单,但是此页面上有多个 link_to_remote 行,一次单击多个行是有效的 - 只是两次不同。在 link_to_remote 之外声明的每行一个变量似乎非常笨拙......
我最初没有使用原型,而是首先尝试使用纯 Javascript 来进行概念验证——但它也失败了:
<a href="#" onclick="self.onclick = function(){alert('foo');};">点击</a>
只是在单击时发出警报-这里的 lambda 什么都不做?下一个更像是预期的目标,应该只在第一次提醒。但相反,它每次都会发出警报:
<a href="#" onclick="alert('bar'); self.onclick = function(){return false;};">点击</a>
所有想法表示赞赏!