2009-06-23 5 views
-2

Comment supprimer une classe qui a été ajoutée à un ID div? Plus tôt, j'ai ajouté une étoile à une étiquette, quand une case à cocher est un clic.Supprimer un élément de classe

$("<span class='req'><em> * </em></span>").appendTo("#displayPanel #labelstr"+div_id); 

Maintenant, si la même case est de nouveau cliquée, je veux supprimer cette étoile. Je sais qu'il existe une option remove(), mais quel est le code approprié? S'il vous plaît me guider.

+0

utilisez-vous JQuery? – PatrikAkerstrand

+0

On dirait jQuery pour moi. Marque? –

+1

Tag a été ajouté –

Répondre

3

Par le regard de celui-ci, vous n'êtes pas essayer de supprimer une classe qui serait la commande removeClass(), mais il faut plutôt supprimer un élément enfant d'un <div>

Vous pouvez faire

$("#displayPanel #labelstr" + div_id + " span.req").remove(); 

pour supprimer l'élément span enfant avec la classe 'req' du <div>.

+0

Pourquoi la downvote? C'est exactement ce que j'ai dit, car le PO semble avoir mal interprété sa question. –

+0

+1 :) ... 15 caractères –

+0

@ Alan- Je ne vous ai pas downvoted –

1

Je pense:

$('#displayPanel #labelstr'+div_id+' .req').remove(); 

si vous souhaitez supprimer le .req et seulement l'un d'entre eux par élément.

+0

vous avez raison. Je l'ai fait à tort. Au lieu d'utiliser $ ("# labelstr" + div_id + "span.req"). Remove(); Merci, vous et tous les autres. Merci. Juste un identifiant était suffisant, alors j'ai omis ce #labelstr. – Angeline

2

Pas besoin d'utiliser 2 sélecteurs d'id comme ils « devraient » être unique, donc il suffit de faire

$("#labelstr" + div_id + " span.req").remove(); 
0

Je trouve la réponse. Il est

$('.req').remove(); 

Plus tôt j'ai essayé la même chose, sans les guillemets, c'est pourquoi je ne l'ai pas obtenu le résultat requis.

@machine: Oui, c'est jQuery. Je vous remercie.

+2

Mais cela va supprimer tous les éléments qui ont une classe ou req. Êtes-vous sûr de vouloir cela? Aussi, l'utilisation d'une classe dans un sélecteur est lente. Il est préférable d'utiliser nodeName.class pour la performance en particulier sur un grand dom – redsquare

+0

oui, j'avais tort. Il a supprimé pour tous les éléments qui ont cette classe. Au lieu d'utiliser $ ("# labelstr" + div_id + "span.req"). Remove(); tel que suggéré par vous et tous les autres. Je vous remercie. – Angeline

Questions connexes