2010-03-09 4 views
16

J'ai le code HTMLJQuery Trouver #ID, removeClass et AddClass

<div id="testID" class="test1"> 
     <img id="testID2" class="test2" alt="" src="some-image.gif" /> 
    </div> 

suivant, je veux essentiellement pour se rendre à # testID2 et remplacer .test2 classe .test3 classe?

J'ai essayé

jQuery('#testID2').find('.test2').replaceWith('.test3'); 

Mais cela ne semble pas fonctionner?

Des idées?

Répondre

34
jQuery('#testID2').find('.test2').replaceWith('.test3'); 

sémantiquement, vous sélectionnez l'élément avec l'ID testID2, puis vous recherchez des éléments descendants avec la classe test2 (n'existe pas) et vous remplacez cet élément par un autre élément (éléments situés n'importe où dans la page avec la classe test3) qui n'existent pas non plus.

Vous devez faire ceci:

jQuery('#testID2').addClass('test3').removeClass('test2'); 

Ceci permet de sélectionner l'élément avec l'ID testID2, ajoute alors la classe test3 à elle. Enfin, il supprime la classe test2 de cet élément.

+0

+ pousser plus de 1000. Bonne explication. –

+0

super merci :) – Tom

0

Essayez cette

$('#testID').addClass('nameOfClass'); 

ou

$('#testID').removeClass('nameOfClass'); 
0

.....

$("#testID #testID2").removeClass("test2").addClass("test3"); 

Parce que vous avez attribué un identifiant à img trop, vous pouvez simplement le faire aussi:

$("#testID2").removeClass("test2").addClass("test3"); 

Et enfin, vous pouvez le faire aussi:

$("#testID img").removeClass("test2").addClass("test3"); 
0

code corrigé:

jQuery('#testID2').addClass('test3').removeClass('test2');