Vous pouvez le faire comme ceci:
function addCode(code) {
$('<li class="codeList">' + code + '</li>').click(function() {
deleteCode(code);
}).appendTo('#codeList');
}
function deleteCode(code) {
$('#'+code).remove();
}
... ou plus simplement:
function addCode(code) {
$('<li class="codeList">' + code + '</li>').click(function() {
$('#'+code).remove();
}).appendTo('#codeList');
}
Lorsque vous utilisez une bibliothèque comme jQuery (ou même quand pas, franchement), il n'y a pratiquement aucune raison d'utiliser l'attribut onclick
à l'ancienne es pour la configuration des gestionnaires. Dans ce qui précède, je l'ai remplacé par la fonction click
, qui configure un gestionnaire lorsque l'utilisateur clique sur l'élément.
Remarque: Lazarus note que votre code supprime un élément par id
en utilisant la valeur code
:
$('#' + code).remove();
... mais que le code ne produit pas un élément à cet identifiant. Je suppose que vous avez ajouté cet élément avec un autre code ailleurs, et que l'objectif n'est pas de supprimer le li
que vous avez ajouté avec ce code.
Si vous avez voulez supprimer ce même li
sur clic, pas besoin d'une carte d'identité du tout:
function addCode(code) {
$('<li class="codeList">' + code + '</li>').click(function() {
$(this).remove(); // <== Changed here
}).appendTo('#codeList');
}
+1, ce que je frappe. La réponse de @Andy est une autre excellente façon de le faire. @Downvoter, c'est juste une mauvaise forme pour ne pas dire pourquoi vous avez voté. –
jAndy est plus propre. :-) –
Est-ce que le downvoter souhaite partager des commentaires utiles? –