![](/img/trans.png)
[英]prevent users to post multiple submission by clicking submit button multiple times
[英]prevent multiple submission with button
我目前正在查看所有防止使用按鈕標簽進行多次提交的可能性。 我面臨的問題是,如果用戶真正快速單擊“提交”按鈕,它將使他們能夠提交多個帖子。 我想將提交內容限制為僅提交一個。 我嘗試使用onclick="this.disabled = true
,但是它使按鈕根本無法工作,當前的按鈕標簽如下所示:
return "<button class='button btn btn-primary' id='gform_submit_button' onclick='this.disabled = true' type='submit'><span>Submit!/span></button>";
誰能指導我如何實現這一目標?
最終,您不能在客戶端阻止多個提交。 您將必須以任何使用的服務器端語言(例如PHP)在服務器端實施這些安全措施。
在客戶端 ,您可以執行以下操作
var canSubmit = true;
$('.button').click(function(){
if(canSubmit)
{
// fire missiles
canSubmit = false;
}
else
{
// sorry missiles loading
}
});
現在,由於在單擊一次canSubmit
其設置為false
,因此第二次單擊將不會運行該代碼。 驗證或處理提交的數據后,可以將canSubmit
設置為true
。
當按鈕為onClicked時,請調用此函數:
function submitFunc(formId){. document.getElementById(formId).submit();
}
提交頁面總是很棘手。 提交有兩個挑戰
有一個技巧可以解決此挑戰,可以使用GET調用重定向頁面。 您用來加載數據的GET調用。 在此處了解更多信息。
因此,我建議在提交表單后將頁面重定向到GET。
在此過程中,將加載新表單,如果用戶嘗試提交表單,則將觸發將處理第一個挑戰的驗證。
並且由於重定向,因為您的最后一次調用是GET,刷新數據將被加載,並且其中沒有任何危害。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.