J'essaie d'obtenir le HTML extérieur de deux manières différentes, basé sur Ceci Question . Malheureusement, aucun d'entre eux ne donne le résultat attendu:
html: p> js: p> la sortie est: p> Je m'attends au résultat suivant: P> P> P> P> P> P> P> P> P> P> P> P> P> P> P> P> P> P> P> P> P> Exemple en direct ici P> Qu'est-ce que je fais mal? P> P> P> p >
5 Réponses :
$(function() {
var html = $('<div>').append($('#my_div').clone()).html();
$('body').html( htmlspecialchars( '[' + html + ']' ) );
});
Tout ce que je veux, c'est d'obtenir le HTML extérieur d'un élément donné, dans mon cas: $ ('# my_div') code>. Je ne veux pas ajouter des éléments à dom.
Donc, par exemple, vous voulez obtenir l'enveloppe de ma div !? En supposant qu'un code comme celui-ci:
La chose est que je n'ai pas de wrapper, et de préférence, je ne veux pas créer un ... à nouveau, tout ce que j'ai est un élément, et je veux obtenir son HTML extérieur. Aussi simple que ça :)
@Misha - Essayez ceci:
Vous devez échapper à la sortie pour le voir correctement => JSBIN.COM/ENEXI4/3/EDITIGERO/A >
Pas besoin de
Peter, quelle est la différence entre Voici une fonction utilisée dans la Lib pure.js pour obtenir l'OUTERHTML:
+1 - Belle réponse. Vous devriez le poster dans le Question originale à propos de ce . Premier, Regarde:
second w / jQuery, vous pouvez également utiliser La méthode de ma réponse à la question que vous avez liée à a > strong>: p> Ceci ajoute un clone de l'élément en question à un objet Div JQuery et obtient le HTML intérieur de l'objet DIV JQUERY .. .. qui est l'extérieur de l'élément en question. P> La forme générale de l'extérieur d'un élément est la suivante: p> où Remarque: Ce qui précède ajoute des nouveaux éléments à la DOM. Vous pouvez utiliser ou p>
$ ('< #my_div code> ou ajoutez des éléments à la DOM. Il fait une copie de #my_div code> et l'a ajouté à un #my_div code> ......... Voir ma réponse pour une explication de la raison pour laquelle vous pensiez votre premier code de code travail; Même si c'est fait.
votes
var result = $('<div></div>').append($('#my_div').clone()).html();
alert(result);
$ (' $ (' $ ('<') code> .... si la vitesse n'est pas Un problème, je préfère $ ('
$ (' $ (' $ (' ') code>?
votes
var html = outerHTML(document.getElementById('my_div'));
votes
Bonjour code> ................... car le Bonjour code> s est à l'intérieur des divs!
p>
EXEMPLE JSFIDDLE < / a> strong> h2>
p> éléments CODE> est le sélecteur de jQuery de l'élément dont vous voulez OUTERHTML. P>
$ ('
votes
obtenir code> pour extraire l'élément DOM Native DOM, puis utiliser le OUTERHTML code> comme:
Dupliqué possible de Comment puis-je faire outerhtml à Firefox?
Votre Premier code Snippet fonctionne et votre seconde fonctionne presque. Regardez le HTML de la page. La sortie regarde b> comme un texte brut car il est rendu comme HTML ..... Notez les nouvelles lignes .... divs!
Super exemple de la façon de poser une question. C'est ce que je fais. Voici le code. Voici ce qui se passe. C'est ce que je m'attends à arriver.