Je souhaite ajouter une ligne à une table, puis l'utiliser comme objet DOM. Supposons que le code HTML suivant:jQuery: ajouter une ligne à la table et le sélectionner dans DOM
<table>
<tr class="existing-row"><td>
<a>add new row</a>
</td></tr>
<tr class="existing-row"><td>
<a>add new row</a>
</td></tr>
</table>
J'utilise le JavaScript suivant avec jQuery pour insérer une ligne:
function addNewRow(addNewRowLink)
{
var currentRow = addNewRowLink.closest('tr');
currentRow.after('<tr class="added-row"><td>This is new</td></tr>');
var newRowInDomTree = currentRow.next('tr');
//This does not work
}
La newRowInDomTree
variable contient un tr.existing-row
plutôt un tr.added-row
. Il semble que l'arborescence DOM n'est pas mise à jour, mais je ne comprends pas pourquoi.
Des idées?
Merci à l'avance.
vous manque un point-virgule après la 'after' déclaration. – zzzzBov
@ zzz, il vaut mieux avoir un point-virgule, mais même si vous ne le donnez pas ne jette aucune erreur .. – kobe
le point-virgule n'est pas nécessaire en javascript, mais est toujours une bonne pratique pour en ajouter un donc il y a aucune erreur lors de la réduction du code –