2
後我趕上上提交表單的按鈕點擊。我做event.preventDefault()
禁用默認的瀏覽器動作,所以我可以在點擊按鈕後做我的東西。我這種情況下,我做AJAX調用服務器。通過服務器的響應,我想選擇是否繼續提交表單或做其他事情。觸發事件event.preventDefault
$inviteSubmitForm.find('input[name="accept"]').click(function(e){
e.preventDefault();
$.ajax({
...
success : function(data) {
if (data.something) {
...
} else {
...
}
}
});
});
問題與此是,我無法施展點擊按鈕的默認操作,COS邏輯在AJAX回調。所以return true
只是結束回調函數 - 我不能使用這個簡單的技巧。也移動e.preventDefault()
是不行,cos表單立即提交。
任何想法?
該解決方案是確定和工作,但 - 我有幾個形式提交按鈕。如果我想通過這種方法區分按鈕,我必須在原始提交按鈕的名稱後面添加。這仍然可以,但我正在尋找一個系統清潔的解決方案 - 改寫原始按鈕的舊事件。 – srigi
@srigi:爲什麼你需要一個隱藏的輸入字段?你已經在做:'find('input [name =「accept」]')'這應該只是一個'type'按鈕。此外,如果你有相同的功能處理多個按鈕只需添加一個簡單的開關。你想讓我爲你添加一個例子嗎? – PeeHaa
個人而言,我想看看如何在事件級別處理此問題。 –