Have you tried using .hide() and .show() instead of addClass? Less
code (both JavaScript and CSS). Unless the class 'show' has more than
just "display: inline"?

On Jul 12, 1:15 pm, stef <[EMAIL PROTECTED]> wrote:
> Im using the code below to display / hide form fields depending on
> what value is selected from a drop down list (id='category'). the
> optional form fields are all hidden by default when DOM is ready,
> using
>
> $(document).ready(function() {
>         $("#dimensions").addClass("hidden")
>         $("#size").addClass("hidden")
>         $("#language").addClass("hidden")
>         $("#inthebox").addClass("hidden")
>         $("#color").addClass("hidden")
>
> });
>
> when i select "games", the p's with id 'dimensions' and 'inthebox'
> appear - so far so good. when i then select "accessoires",
> 'dimensions' and 'inthebox' should get hidden by adding the class
> 'hidden' (.hidden{display:none;}) - but this never works! any ideas
> why? firebug shows no errors ...
>
> $(document).ready(function()
> {
>         $("#category").change( function()
>                 {
>                         if ($("#category").val() == "games")
>                         {
>                                 $("#dimensions").addClass("show")
>                                 $("#inthebox").addClass("show")
>
>                         }
>
>                         else if ($("#category").val() == "accessoires")
>                         {
>                                 $("#dimensions").addClass("hidden")
>                                 $("#inthebox").addClass("hidden")
>
>                         }
>                 });
>
> });

Reply via email to