我基本上試圖做一個表單驗證。 Evertyhing工作正常。除了一件事。首先,這裏是我的代碼:jQuery隱藏元素和isVisible問題
$('#submit_btn').click(function(){
$("input:not([type=radio],[type=checkbox])").each(function() {
if ($(this).val() == ""){
$('#'+$(this).attr("name")+'_error').show("");
}
else{
$('#'+$(this).attr("name")+'_error').hide("normal");
}
});
if(!($("div[id$=error]").is(":visible")))
alert("a");
});
點擊提交按鈕後,它會檢查不是單選按鈕或複選框輸入。如果輸入爲空,則顯示錯誤。
如果輸入了某些內容,則會隱藏錯誤。
最後我檢查是否有任何錯誤信息可見,如果沒有,我會提交表單。
我的問題是,我用.hide(「normal」)的小動畫隱藏錯誤信息。所以我相信在隱藏最後一條錯誤消息的過程中,我的最後一條if語句會執行,並且它認爲有可見的錯誤消息(但是,它正在隱藏)
如何執行我的if語句隱藏進程完成後?
在我的情況下,當沒有錯誤信息時,我會在另一次點擊提交按鈕後得到警報。
我希望我清楚我的問題。如果沒有,我會嘗試重寫它。
謝謝!
以另一種方式,我建議你嘗試一下jQuery的驗證插件,而不是自己編寫整個解決方案。試試這個,最流行的用jQuery進行驗證:http://bassistance.de/jquery-plugins/jquery-plugin-validation/ – mdrg