2010-08-30 63 views
7

我有我想要的條件,一些提交所以我創建了一個表格前檢查:jQuery的攔截表單提交

$("Step2_UpdateCartForm").submit(function() { 
    if (!procssingEmails) { 

     return true; 
    } else { 
     return false; 
    } 

而且我有一些事件可能導致一個表單提交這樣我有類似的東西:

function fireUpdateCart() { 
    if (isUpdateCartPending) { 
     clearCartOptionDefaultValues(); 
     $("#Step2_UpdateCartForm").submit(); 
    } 
} 

在幾個不同的地方。我期待上面的語句將處理髮送到第一個代碼塊,但相反,表單正在提交。

我錯了期望要處理

回答

10

你缺少從事件定義爲「#」標識我的驗證模塊。這是你的問題的可能原因。第一行應爲:

$("#Step2_UpdateCartForm").submit(function() { 

^
+1

gawd我討厭那些錯誤 - 我可以在星期一責怪它嗎? – justSteve 2010-08-30 13:09:13

6

在選擇器中缺少#。你應該使用下列內容:

$("#Step2_UpdateCartForm").submit(function() { 
    if (!procssingEmails) { 

     return true; 
    } else { 
     return false; 
    } 

而且順便說一句,也許你的「procssingEmails」拼寫錯了,不是嗎?