2011-09-26 51 views
3

我有一個使用ZURB.org腳本(工作完美)的彈出框。在這個揭示框中,我有一個表格,用戶可以填寫某些信息。這使用插件完美驗證 - 呈現漂亮的錯誤消息對齊罰款。與表格驗證插件jQuery延遲錯誤

我的問題是,用這個顯示框,當用戶點擊顯示框(退出)時,驗證圖標仍然出現在那裏,直到用戶手動點擊它們。

<a class="close-reveal-modal" onclick="$('#jobForm').validationEngine('hideAll');">Exit</a> 

如何過,我現在想:

我已經設法弄清楚,如果他們單擊該對話框頂部的「退出」圖標,將這段代碼的方式關閉它們使用一些jQuery自動'隱藏'這些錯誤信息,比如說3秒。

我到目前爲止的代碼是:

<script> 
$(document).ready(function() { 
$("#job_submit").click(function() { 
$('#jobForm').validationEngine('hideAll').delay(3000); 
}); 
}); 
</script> 

job_submit是在表單中提交按鈕的ID和名稱。我進一步用Chromes調試工具,並在控制檯內寫下以下代碼:

$('#jobForm')。validationEngine('hideAll')。delay(3000);

當表單驗證錯誤出現時。這回來的錯誤'類型錯誤'。

從這一點上我不確定如何解決此類型錯誤。

一如既往,非常感謝您的幫助。

更新

股利的類不被命名一樣,出於某種原因,該div的第一部分是表單字段的名稱itsself如jdesformError parentFormjobForm formError

如何過的最後2個部分看起來是一致的。我試過在控制檯中 - $('。jdesformError parentFormjobForm formError')。delay(1000).trigger('click');

並且它的飛行顏色通過但是,'錯誤'字段並沒有消失時,當我的身體上點擊它,這是否與我使用的顯示框有關?

回答

0

這裏有一個辦法:

$(document).ready(function() { 
    $("#job_submit").click(function() { 
     // click all the errors at once 
     $('.formError').delay(3000).trigger('click'); 
    }); 
}); 
+0

非常感謝您的回答。我明白你從哪裏來,在檢查div類自己的'錯誤'時,他們似乎是附加到每個'表單字段名稱' - 就像這樣 - jdesformError parentFormjobForm formError。用jdes作爲表單名稱。有沒有辦法點擊所有包含'formError'的div類? – Ben

+0

我不確切地知道你的意思。但。在上面的示例代碼中,我使用了一個名爲「formError」的驗證器插件使用的泛型類。此類應用於每個錯誤工具提示中,與表單或輸入名稱無關。我認爲它應該工作。無論如何,如果我在這裏錯過了一些東西,請告訴我。樂意效勞。 – Dave

+0

我將你的代碼輸入到控制檯中,它可以工作! - $('。formError')。delay(3000).trigger('click'); - 但它完全不起作用,因爲一旦按鈕被點擊後它不會被激活?按鈕代碼是所以我不明白爲什麼不呢? – Ben