我需要讓我的提交按鈕只點擊一次,以防止雙擊。只允許點擊一次,沒有雙擊
這裏有一個方法,有人貼:
$(document).ready(function() {
$("#submit").one('click', function (event)
{
event.preventDefault();
//do something
$(this).prop('disabled', true);
});
});
1)從我的理解,將。一隻能觸發一次。 如果是這樣,我不確定event.preventDefault()和$(this).prop('disabled',true)的需求是什麼,因爲點擊只完成一次。這將是本身的修復。從測試中,我注意到,如果我雙擊,它只發生一次(嘗試沒有防止默認和禁用)
2)如果.one沒有做我所假設的1),我明白$(這個) .prop('disabled',true);禁用按鈕,但不太明白 爲什麼我們需要event.preventDefault();根據我的理解,這將防止默認操作,在這種情況下是提交。如果這是真的,event.preventDefault();因爲我們確實想提交它,但只有一次。
3)本身不會阻止雙擊。我對此是否正確?所以不需要其他的邏輯,正確?
@ 11684我認爲他的問題更多的是爲什麼我們有這些時使用'.one' .. –
問題,比如說,如果你點擊一個按鈕,.one將只做一次,我知道了。如果在點擊之後,表單被提交併且您在同一頁面上,會發生什麼情況。這個.one再次按預期工作。不是,就我而言,點擊後我會轉到另一個頁面,但如果您保持在同一頁面上而只想提交內容,會發生什麼? –
@NatePet提交表單時,頁面將刷新..除非你做ajax調用..所以如果表單被提交(這將刷新頁面),'.one'將按預期工作。 –