55 votes

Définir le contenu de HTML <span>avec Javascript</span>

Dans une page web je suis d'appeler un WebService qui me donne une valeur de type entier. J'ai besoin d'afficher cette valeur dans un bloc de texte. Je suis actuellement en utilisant un code HTML <span>.

Jusqu'à présent, j'ai trouvé deux méthodes de mettre ma valeur dans un intervalle. innerText() est un IE propriétaires façon de faire et d' innerHTML() est un non-conformes aux normes, bien que largement pris en charge.

Qu'est-ce que les normes appropriées, conformes à la manière de mettre le texte entre <span> et </span> de Javascript?

58voto

user113716 Points 143363

Ceci est conforme aux normes et peut être utilisé dans plusieurs navigateurs.

Exemple: http://jsfiddle.net/kv9pw/

 var span = document.getElementById('someID');

while( span.firstChild ) {
    span.removeChild( span.firstChild );
}
span.appendChild( document.createTextNode("some new content") );
 

47voto

robinst Points 9249

Avec les navigateurs modernes, vous pouvez définir la propriété textContent , voir Node.textContent :

 var span = document.getElementById("myspan");
span.textContent = "some text";
 

19voto

Brian Donovan Points 3649

Pour le faire sans utiliser une bibliothèque JavaScript telle que jQuery, procédez comme suit:

 var span = document.getElementById("myspan"),
    text = document.createTextNode(''+intValue);
span.innerHTML = ''; // clear existing
span.appendChild(text);
 

Si vous voulez utiliser jQuery, c'est simplement ceci:

 $("#myspan").text(''+intValue);
 

1voto

chaos Points 69029

Pour ce faire, la méthode la plus conforme aux normes consiste à créer un nœud de texte contenant le texte souhaité et à l'ajouter à l'étendue (en supprimant les nœuds de texte existants).

Pour ce faire, j’utiliserais .text() jQuery.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X