[jquery] jQuery 객체를 문자열로 어떻게 변환합니까?

jQuery 객체를 문자열로 어떻게 변환합니까?



답변

나는 당신이 완전한 HTML 문자열을 요구한다고 가정합니다. 이 경우 다음과 같은 방법으로 트릭을 수행 할 수 있습니다.

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

여기서는 더 자세히 설명 하지만 본질적으로 관심있는 항목을 감싸고 조작하고 제거하고 HTML을 가져 오기 위해 새 노드를 만듭니다.

문자열 표현 바로 뒤에 있다면으로 이동하십시오 new String(obj).

최신 정보

2009 년에 원래의 답변을 썼습니다. 2014 년 현재 대부분의 주요 브라우저 outerHTML는 기본 속성 (예 : FirefoxInternet Explorer 참조 )으로 지원하므로 다음을 수행 할 수 있습니다.

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


답변

jQuery 1.6에서 이것은 더 우아한 솔루션 인 것 같습니다.

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


답변

.get (0)을 사용하여 기본 요소를 잡고 outerHTML 속성을 가져옵니다.

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


답변

좀 더 구체적으로 할 수 있습니까? 태그 안에 HTML 을 가져 오려고하면 다음과 같이 할 수 있습니다.

HTML 스 니펫 :

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

jQuery :

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


답변

HTML 노드 (객체)에서 사용할 수있는 속성 및 메서드를 찾는 가장 좋은 방법은 다음과 같은 작업을 수행하는 것입니다.

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

jQuery 1.6 이상에서는 outerHTML을 사용하여 문자열 출력에 HTML 태그를 포함시킬 수 있습니다.

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


답변

jQuery가 여기에 있습니다.

jQuery.fn.goodOLauterHTML= function() {
    return $('<a></a>').append( this.clone() ).html();
}

모든 HTML 자료를 반환하십시오.

$('div' /*elys with HTML text stuff that you want */ ).goodOLauterHTML(); // alerts tags and all


답변

이것은 나를 위해 잘 작동하는 것 같습니다 :

$("#id")[0].outerHTML