Comment puis-je remplacer une partie du texte d'un
ou de plusieurs éléments dans une liste d'éléments ?

Index

La liste d'éléments :

<ul id="maListeID">
	<li><a href="#signet1">liste, item 1</a></li>
	<li><a href="#signet2">liste, item 2</a></li>
	<li><a href="#signet3">liste, item 3</a></li>
	<li><a href="#signet4">liste, item 4</a></li>
	<li><a href="#signet5">liste, item 5</a></li>
</ul>

Exemple 1

On crée un objet jQuery qui représente, dans la liste d'ID "maListeID", les éléments enfants "a" du troisième élément "li" : var jObj = $( "#maListeID" ).children( "li" ).eq( 2 ).children( "a" );.

Le texte de l'objet est remplacé par le texte modifié, replace() est une fonction JavaScript : jObj.text( jObj.text().replace( "liste", "liste de signets" ) );.

Exemple 2

On crée un objet jQuery qui représente, dans la liste d'ID "maListeID", les éléments enfants "a" des éléments "li" n° 4 et 5 : var jObj = $( "#maListeID" ).children( "li:gt(2)" ).children( "a" );.

Le texte de chaque objet est remplacé par le texte modifié

jObj.each( function( i, item ){
	$( item ).text( $( item ).text().replace( "item", "élément n°" ) );
});

Tests unitaires avec QUnit.