2012-10-29 2 views
0

이 질문은 이전에 물어 보았지만 아직 JavaScript를 배우고 있으며 다른 사람들의 답변이 복잡하다는 점을 알고 있습니다. 자바 스크립트를 읽는 HTML 파일과 같은 디렉토리에 텍스트 파일이 있고 그 텍스트 파일에는 글자 그대로 한 줄이 있습니다. 그 줄을 텍스트 파일에서 가져 와서 문자열에 넣을 수 있기를 원합니다. FF, IE 및 Chrome에서 작동 할 수있는이 작업을 수행하는 가장 간단한 방법은 무엇이며 브라우저 선택을 제외하고는 보편적으로 유효합니까? 다시 말하지만, 이전에 이런 질문을 받았지만 다른 곳에서 본 예제 코드의 복잡성으로 인해 실제 방법을 선택하는 데 어려움을 겪고 있습니다. 감사! 당신이 거기 텍스트 파일 이름을 넣을 수 있도록JavaScript로 파일을 읽을 수있는 가장 간단한 방법은 무엇입니까?

+0

... 항상 가장 좋은 방법은 아니지만, 검색 엔진 최적화의 성능이 저하 무거운 프레임 워크 사방 비동기 자바 스크립트를 사용하여 비교 당신이 localhost에서 그것을 실행한다고 가정하면 XmlHttpRequest (AJAX)를 사용할 수 있지만'file : //'을 사용한다면 각 브라우저마다 다릅니다. – zzzzBov

+0

http://stackoverflow.com/a/8137303/363605 – jsweazy

답변

3

사용 jQuery를이 방법 http://api.jquery.com/jQuery.get/

$.get(url).success(function(data, status, response) { 
    var text = response.responseText; 
    // use your one line text stored in text variable here 
} 

URL 변수가 상대 할 수 있습니다 얻을. 접속하시면 텍스트 파일이 "mytext.txt"라고 예를 들어하고 스크립트의 같은 디렉토리에 당신은 넣어 :

$.get("mytext.txt").success(function(data, status, response) { 
     var text = response.responseText; 
     // use your one line text stored in text variable here 
    } 

주이 응답을 텍스트 파일 두 스크립트를 액세스하기 위해 HTTP를 사용하는 것으로 가정 텍스트 파일이 동일한 도메인에 있습니다.

2

기본적으로 대부분의 브라우저는 JS가 컴퓨터의 파일 시스템에서 로컬로 파일을 열 수 없으므로 까다로운 작업입니다. 웹 서버에서 ajax를 사용하여 텍스트 파일을 요청할 수 있습니다. 이렇게하려면 jQuery를 매우 보편적으로 사용할 수 있으므로 jQuery를 사용하는 것이 좋습니다. ajax 호출을 수행 할 때 요청은 동일한 출처 정책을 준수해야합니다. laymans면에서 www.mysite.com에 있다면 www.mysite.com/aTextFile.txt를 요청할 수 있지만 www.someothersite.com/aTextFile.txt를 요청할 수 없습니다.

jquery, momo의 대답을 참조하십시오. 나는 같은 것을 입력하려고했으나 그/그녀는 나를 때렸다.

+0

+1 동일한 도메인 정책에 대한 유용한 정보 – momo

0

제가 생각할 수있는 가장 간단한 방법은 문서의 내용을 어딘가에 (예 : 보이지 않는 textarea) 페이지로 출력하기 위해 서버 측 언어를 사용하고 자바 스크립트를 읽는 것입니다. AJAX도 라이브러리도없고 정말 빠릅니다.

<textarea id="textarea"><?php include("test.txt") ?></textarea> 

<script> 
var str = document.getElementById("textarea").value; 
</script> 

지금, 이것은 페이지가 보안 샌드 박스 차이가

관련 문제