402 votes

Objet JQuery à chaîne

Comment convertir un objet jQuery en une chaîne?

598voto

John Feminella Points 116878

Je suppose que vous demandez la chaîne HTML complète. Si c'est le cas, quelque chose comme ça va faire l'affaire:

 $('<div>').append($('#item-of-interest').clone()).html(); 
 

Ceci est expliqué plus en détail ici , mais essentiellement vous faites un nouveau nœud pour envelopper l'élément d'intérêt, faites les manipulations, retirez-le et récupérez le code HTML.

Si vous êtes juste après une représentation de chaîne, allez avec new String(obj) .

190voto

nickh Points 1792

Avec jQuery 1.6, cela semble être une solution plus élégante:

 $('#element-of-interest').prop('outerHTML');
 

51voto

mppfiles Points 666

Utilisez simplement .get (0) pour récupérer l'élément natif et obtenir sa propriété outerHTML:

 var $elem = $('<a href="#">Some element</a>');
console.log("HTML is: " + $elem.get(0).outerHTML);
 

21voto

Alex Rockwell Points 870

Pouvez-vous être un peu plus précis?

Si vous essayez d'obtenir le code HTML dans une balise, vous pouvez faire quelque chose comme ceci:

Extrait de code HTML:

 <p><b>This is some text</b></p>
 

Jquery:

 var txt = $('p').html(); // value of text is <b>This is some text</b>
 

9voto

crystalh Points 75

Le meilleur moyen de savoir quelles propriétés et méthodes sont disponibles pour un noeud HTML (objet) est de faire quelque chose comme:

 console.log($("#my-node"));
 

À partir de jQuery 1.6+, vous pouvez simplement utiliser outerHTML pour inclure les balises HTML dans votre sortie de chaîne:

 var node = $("#my-node").outerHTML;
 

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