2011-08-27 133 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