2009-06-25 10 views
1

J'ai un élément comme celui-ci:jQuery pas la mise à jour div

<div id="foo_<?php echo $id;?>" class="hidden"></div> 

J'essaie

if ($("#foo_ " + id).is(':hidden')) 
{ 
    //stuff 
    $("#foo_ " + id).html(html).slideDown('fast'); 
} 

J'ai vérifié à plusieurs reprises, la div foo_233 a bien été trouvé dans Firebug et est montré comme caché. L'identifiant est transmis correctement à la fonction javascript. Mais les lignes ci-dessus ne fonctionnent toujours pas. Quel pourrait être le problème? Il est très frustrant ..

+0

Est-ce que $ ("# foo_" + id) .is (': hidden') == true? –

+0

no. –

Répondre

6

L'espace dans votre sélection:

if ($("#foo_ " + id).is(':hidden')) 
{ 
    //stuff 
    $("#foo_ " + id).html(html).slideDown('fast'); 
} 

se débarrasser de lui:

if ($("#foo_" + id).is(':hidden')) 
{ 
    //stuff 
    $("#foo_" + id).html(html).slideDown('fast'); 
} 

On peut supposer que vos ID div devrait ressembler à "foo_5" mais le sélecteur votre construisaient était "foo_ 5", ce qui explique pourquoi votre condition if n'évalue jamais à true.

Questions connexes