你好,我可爱的堆栈,
经过大量研究,没有可行的解决方案,我想我会在这里碰碰运气。 我有一个按钮,它将用户的公式发布到我的服务器上。 但是我的巨大问题是,当用户单击按钮多少时,我得到的配方器的次数就与单击它的次数相同。
我的按钮和发送功能是:
echo "<form name=\"myForm\" method=\"POST\" action=\"aktenerfassung.php?id=$id&mandnr=$mandnr&countBeleg=$countBeleg\"> \n";
echo "<p align=\"center\"><input id=\"absenden\" align=\"center\" type=\"submit\" value=\"Fehler korrigieren\" name=\"B1\"></p> \n";
echo "</form> \n";
unset($clsAktenerfassung);
我的解决方法是:
$(function() {
$('absenden').on('click', function(e) {
var trigger = $(this),
clickCount = trigger.data('clickCount');
clickCount++;
trigger.data('clickCount', clickCount);
}
if(clickCount > 1) {
alert('schon einmal klicken')
}
});
但是我仍然可以按按钮多少,仍然没有收到警报。 我什至没有从PHP收到错误消息。
这应该是警报:
if(clickCount > 1) {
alert('schon einmal klicken')
}
如果不清楚,或者您需要其他信息,或者stackoverflow中已经存在此帖子,请告诉我。
谢谢你!
答案 0 :(得分:3)
我也遇到了同样的问题,我决定禁用按钮并使用"Sending datas..."
之类的按钮来更改其文本,而不是单击“多次单击”。我用这个简单的代码通过jQuery实现了这一点:
$('form[name=myForm]').submit(function()
{
$('#absenden').attr("disabled", true);
$('#absenden').html("Sending datas...");
});
该事件在表单提交而不是在提交按钮上触发,因为用户可以使用Enter或回车键进行提交。