2011-08-27 58 views
2

我有一個表單,當提交時會首先驗證,如果表單無效,它會再次回到表單頁面並顯示錯誤。JQuery slidedown效果不起作用?

這是包含錯誤的DIV:

<div id="error"><?php echo validation_errors('<p class="error">'); ?></div> 

我使用笨的方式。

我想要的形式了slideDown當用戶將導航回到表單頁面,所以我有一個劇本:

$(document).ready(function() {  
    $('#error').slideDown('slow'); 
}); 

我的問題是,我想不通怎麼怎麼滑下形式即使我已經有了上面的腳本。它只會正常顯示,沒有任何動畫。我錯過了什麼嗎?

請幫幫我。提前致謝。

+4

確保#ERROR是隱藏的開始,否則沒有什麼滑下。 –

+0

我懂了彼得。謝謝。 – Jag

回答

0

試試這個:

集div來隱藏

<div id="error" style="display:none"><?php echo validation_errors('<p class="error">'); ?></div> 


$(document).ready(function() {  
    $('#error').slideDown('slow'); 
    $('#error').css("visibility", "visible"); 
}); 

希望這有助於。

+0

這是突兀的javascript,並且該錯誤不會顯示給js禁用的客戶端。 –

+0

謝謝你的幫助阿爾法。 – Jag

+0

您是否找到了解決方案?這個問題是什麼? – AlphaMale

0

確保您已將該腳本放在頁面底部,例如在關閉</body>標記之前。如果它在<head>中,它將不起作用。

+0

他使用'$(document).ready(fn)',所以你的回答是無關緊要的。 –

2

$(sel).slideDown()如果格不可見

另一個答案建議你使用style="display:none;"但只會工作,這是突兀和錯誤信息將不會被JS禁用瀏覽器中看到。

我會使用:

$(function(){ 
    $("#error").hide().slideDown(); 
}); 

see it working here on jsFiddle

+0

謝謝你這個macek。 – Jag