2012-02-08 2 views
6

어쩌면 이것은 매우 기본적인 것이지만 나는 모두 혼란 스럽다. 여러 섹션 (div)이있는 간단한 html 페이지가 있습니다. 자바 스크립트에 html 태그가 포함 된 문자열이 있습니다.javascript 또는 jquery를 사용하여 문자열에서 html 태그의 내용을 추출하는 방법은 무엇입니까?

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<script type="text/javascript"> 
var str1="<html><body><div id='item1'><h2>This is a heading1</h2><p>This is a paragraph1.</p></div><div id='item2'><h2>This is a heading2</h2><p>This is another paragraph.</p></div><div id='lastdiv'>last</div></body></html>"; 
</script> 
</head> 
<body> 
<div id="title1"></div> 
<div id="new1"></div> 
<div id="title2"></div> 
<div id="new2"></div> 
</body> 
</html> 

내가 (자바 스크립트 문자열에서) HTML 태그의 내용을 추출하고 원하는 섹션 내 HTML 페이지에 콘텐츠를 표시하려면 다음과 같이 코드입니다.

<div id="title1">에 표시되는 "This is a heading1"과 "This is a paragraph1."을 원합니다. <div id="new1">에 표시되고 두 번째 태그 쌍에도 동일하게 표시됩니다.

이 모든 것이 클라이언트 측에서만 작동해야합니다. 나는 HTML DOM getElementByTagName 메소드를 사용하려고 시도했으며 너무 복잡해졌습니다. 나는 jquery를 거의 안다. 그리고 나는 혼란 스럽다. 나는 그것에 대해 어떻게하는지 이해하지 않는다. Javascript 또는 jquery와 사용 방법을 안내해 주시겠습니까? 문자열에서 문자열을 식별하고 그것을 반복하는 방법이 있습니까?

str1에서 "this is heading1"(및 유사한 내용을 html 태그로 묶음)을 추출하는 방법 ?? 그래서 이들의 인덱스를 모른다 substr() 또는 substring() 함수를 사용할 수 없습니다 자바 스크립트에서.

답변

9

:

  • 대상 우리가 입력하고자하는 페이지의 요소를
  • 는 콘텐츠 제공 문자열

jsFiddle

에서 2,337,873,151,514,978,429,733,210
+0

Thnks을 참조하시기 바랍니다 .. – user1196522

1

글쎄, 당신은 당신이 당신의 자신의 HTML에서 HTML 소스를 얻는 방법을 모든

먼저 명확히해야한다. Ajax를 사용하는 경우 소스를 HTML, 심지어 XML로 틱해야합니다.

0

document.getElementById를 ('소자의 ID {}) innerHTML을

경우 사용 JQuery와 $ ('선택 ') HTML()..; 는 '게터'과 '세터'우리가의 패턴을 반복 할 수 있습니다 모두로 .text()를 사용

<div id="test">hilo</div> 
<script> 
alert($('#test').html()); 
<script> 
0

날 나는 완전히 그러나 나는 당신이 (당신이 모두 같은 소리 만들기 있지만) 일부을 대체 할 생각 ... 수행 할 작업을 이해 생각하지 않는 지식을 내 대답 서문 보자 일부 데이터 소스가있는 html. 나는 간단한 예를 리깅 한

여기 jsfiddle입니다 :

http://jsfiddle.net/rS2Wt/9/

이가하는 단순한 대상 사업부에 jQuery를 사용하여 교체하십시오.

호프 행운을 빕니다.

2

IMHO, 당신은 두 단계로 JQuery와이 작업을 수행 할 수 있습니다

단계 1) XML/HTML 문서에 문자열을 구문 분석합니다.

A) parseXML

를 사용 Sinetheta

var htmlString = "<html><div></div></html>"; 
var $htmlDoc = $(htmlString); 

B)에서 언급 한 바와 같이

var htmlString = "<html><div></div></html>"; 
var htmlDoc = $.parseXML(htmlString); 
var $htmlDoc = $(htmlDoc); 

http://api.jquery.com/jQuery.parseXML/

참조하십시오 :

이 작업을 수행하려면 적어도 두 가지 방법이 있습니다 2 단계) t 선택 ext를 XML/HTML 문서에서 가져옵니다.

var text = $htmlDoc.text(jquery_selector); 

그것은 일 .. http://api.jquery.com/text/

관련 문제