jQuery-Objekt als HTML ausdrucken

Lesezeit: 2 Minuten

Gibt es eine gute Möglichkeit, ein jQuery-Objekt als reines HTML auszudrucken?

ex:

<img src="https://stackoverflow.com/questions/1859385/example.jpg">

<script>
var img = $('img').eq(0);
console.log(img.toString());
</script>

toString() funktioniert so nicht. Ich brauche die HTML-äquivalente Zeichenfolge, dh:

<img src="https://stackoverflow.com/questions/1859385/example.jpg">

$('img')[0].outerHTML

gibt Ihnen den HTML-Code des ersten Bildes auf der Seite. Sie müssen dann eine for-Schleife verwenden, um den HTML-Code aller Bilder abzurufen, oder dem Bild eine ID zuweisen und sie nur im jQuery-Selektor angeben.

  • oder, wenn Sie das spezifische Element im DOM kennen, für das Sie den HTML-Code haben möchten … $(‘#some .selector’)[0].outerHTML Stellen Sie einfach sicher, dass Sie es in ein if ($(‘#some .selector’).length) einschließen.

    – bmarti44

    7. März 2014 um 14:28 Uhr


Sie könnten es umschließen und dann HTML verwenden:

var img = $('img').eq(0);
console.log(img.wrap("<span></span>").parent().html());

  • Wird das DOM nicht geändert? Sollen wir klonen img Erste?

    – Casebash

    24. Februar 2011 um 4:39 Uhr


Benutzer-Avatar
andres descalzo

Wenn Sie das Objekt im HTML-Format drucken müssen, verwenden Sie diese Erweiterung äußereHTML oder dieses äußereHTML.

Aktualisieren

Aktualisieren Sie den Link und fügen Sie den Code für den zweiten Link hinzu:

$.fn.outerHTML = function(){

    // IE, Chrome & Safari will comply with the non-standard outerHTML, all others (FF) will have a fall-back for cloning
    return (!this.length) ? this : (this[0].outerHTML || (
      function(el){
          var div = document.createElement('div');
          div.appendChild(el.cloneNode(true));
          var contents = div.innerHTML;
          div = null;
          return contents;
    })(this[0]));

}

  • Also brauche ich wirklich eine Erweiterung dafür? Es macht dasselbe wie Magnars Beispiel, außer dass es vor dem Parsen klont.

    – David Hellsing

    7. Dezember 2009 um 11:47 Uhr

  • wenn das gleiche, aber Sie müssen ihn klonen, um die Elemente im DOM zu verschieben, und sie entfernen diese.

    – andres descalzo

    7. Dezember 2009 um 12:43 Uhr

1054860cookie-checkjQuery-Objekt als HTML ausdrucken

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy