2013-08-09 7 views
1

에 DOM 방법을 사용하면 같은 사용자에 의해 선택되는 파일에 getElementById("id") 또는 getElementsByTagName("tag") 같은 DOM 메소드를 사용하는 방법이 있나요?사용자가 선택한 HTML 파일

내 프로그램에서는 하나의 큰 문자열처럼 처리 할 때 검색하기가 다소 어려운 특정 방식으로 서식이 지정된 HTML 파일 집합을 사용자가 선택하지만 DOM 메서드를 사용할 수 있으면 매우 쉽습니다.

현재 HTML5 File API를 사용하여 FileListFileReader 개체를 가져 와서 파일을 구문 분석하고 문자열을 만듭니다.

는 DOM 방법은 가능한 사용, 또는 대안 적으로, 선택된 HTML 파일을 구문 분석하는 더 좋은 방법이 있나요? JSoup와 같은 라이브러리가 도움이 될 것입니다. JavaScript와 비슷한 것이 있습니까? 당신이 파일의 전체 텍스트가있는 경우

+0

그래서 당신은 서버에 HTML을 구문 분석하려면? 어떤 서버 측 언어를 사용하고 있습니까? 또는 html을 클라이언트 측에서 파싱하고 싶습니까? (즉, 업로드되지 않았습니다.) –

+0

@AlexK. 'JavaScript에 비슷한 것이 있습니까? ' – Ian

+1

"업로드 됨"은 "파일 요소에서 선택됨"을 의미합니다. 설명하는 것처럼 들리며 업로드가 이루어지기 전에 클라이언트에서 발생하기 때문입니다. – Quentin

답변

0

MDN에 따르면 text/html을 유형으로 사용하면 DOMParser과의 호환성이 좋지 않으므로 HTML을 제공 할 때 여전히 application/xml으로 해석하는 것으로 보입니다. 다음은 예입니다 :

var parser = new DOMParser(), 
    str = "<!DOCTYPE html><html><head><title>Test</title></head><body><div id='div1'>asdf</div></body></html>", 
    doc = parser.parseFromString(str, "application/xml"); 

console.log(doc.getElementById("div1").textContent); 

DEMO :http://jsfiddle.net/8AzBp/1/

참조 :

0

, 당신은 항상 다음 브라우저가 DOM을 생성하는 원인이 사업부,에로드 할 수있는 파일을 말했다. 그런 다음 설명 된 방법을 사용할 수 있습니다.

관련 문제