Zakładam, że pytasz o pełny ciąg HTML. W takim przypadku coś takiego wystarczy:
$('<div>').append($('#item-of-interest').clone()).html();
Wyjaśniono to tutaj bardziej szczegółowo , ale zasadniczo tworzysz nowy węzeł, aby zawinąć przedmiot zainteresowania, wykonać manipulacje, usunąć go i pobrać HTML.
Jeśli szukasz reprezentacji ciągów, idź z new String(obj)
.
Aktualizacja
Oryginalną odpowiedź napisałem w 2009 r. Począwszy od 2014 r. Większość głównych przeglądarek obsługuje teraz outerHTML
jako właściwość macierzystą (patrz na przykład Firefox i Internet Explorer ), dzięki czemu możesz:
$('#item-of-interest').prop('outerHTML');
$(...)
to prawidłowy węzeł DOM.)data
W przypadku jQuery 1.6 wydaje się to bardziej eleganckie rozwiązanie:
źródło
Wystarczy użyć .get (0), aby pobrać element macierzysty i uzyskać jego właściwość outerHTML:
źródło
Czy możesz być trochę bardziej szczegółowy? Jeśli próbujesz umieścić HTML w tagu, możesz zrobić coś takiego:
Fragment HTML:
jQuery:
źródło
Najlepszym sposobem, aby dowiedzieć się, jakie właściwości i metody są dostępne dla węzła HTML (obiektu), jest wykonanie czegoś takiego:
Z jQuery 1.6+ możesz po prostu użyć outerHTML, aby dołączyć tagi HTML do twoich danych wyjściowych:
źródło
$('#my-node').get(0).outerHTML
jak w odpowiedzi.outerHTML
nie działało dla mnie, ale działało.prop('outerHTML')
.jQuery jest tutaj, więc:
Zwróć wszystkie te rzeczy HTML:
źródło
Wydaje mi się, że to działa dobrze:
źródło
Akceptowana odpowiedź nie obejmuje węzłów tekstowych (niezdefiniowana jest drukowana).
Ten fragment kodu rozwiązuje to:
źródło
Aby korzystać z .html (), nie trzeba klonować i dodawać do DOM, możesz:
źródło
wrap()
zwraca owiniętego elementu, a nie elementu, z którym został owinięty? Powinno to dać html elementu#item-of-interest
nie będącego rodzicemdiv
(chyba że jQuery zmienił się od lutego 2012 r.).Może być możliwe użycie
jQuery.makeArray(obj)
funkcji narzędzia:źródło
Jeśli chcesz skreślić element HTML, aby go gdzieś przekazać i parsować z powrotem do elementu, spróbuj utworzyć unikalne zapytanie dla elementu:
niż
źródło
Jeśli chcesz serializować cały obiekt do łańcucha, użyj JSON .
źródło