2011-03-12 13 views
4

JavaScript가 Google App Engine에로드되어 혼란 스럽습니다. 장고 템플릿을 사용하고 있습니다.Google App Engine에서 자바 스크립트를로드하십시오.

는 첫째, 내 기본 HTML 파일에, 나는

<script src="d:\jquery.js" type="text/javascript" ></script></head>, 

이 줄 내 기본 HTML 파일에 같은 지역 말하자면, d:/jquery.js에서 내 다운로드 jQuery 코드를로드 할 수 없습니다. 그것은 원격에서 jQuery를로드 할 때 작동합니다. Like

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"type="text/javascript" ></script></head> 

나는 이유를 모른다.

둘째, 내 HTML 파일에 내 자신이 만든 JavaScript 코드를로드 할 수 없습니다. layout.js과 같은 자바 스크립트 파일을 만들고, 내 자식 HTML 파일에서 이렇게로드하려고 시도합니다. HTML에서 상속받습니다.

<body><script src="layout.js" type="text/javascript"></script></body> 

그리고 전혀 작동하지 않습니다. 내가 시도한 유일한 방법은 내 기본 HTML 파일의 본문에 실제 JavaScript 코드를 넣는 것입니다. Like

<body><script> 
    $(document).ready(
     $("#yes").click(function() { 
      $("#no").hide("slow"); 
    })); 
</script> 

나는 왜 그걸 수정해야합니까?

+0

질문을 좀 더 명확하게 입력하거나 적어도 문단으로 나눌 수 있습니까? 또한 \\는 * –

+4

이 아닌 코드를 삽입하기위한 올바른 문자입니다. 프론트 엔드 코드가 로컬 컴퓨터의 스크립트를로드하는 것을 어떻게 심각하게 기대할 수 있습니까? –

답변

17

AppEngine은 로컬 시스템의 경로를 알지 못합니다. 구성한 파일 만 업로드합니다. 당신의 애플리케이션 제목을 파일에이 같은 라인을함으로써이 작업을 수행 :

이 경우
handlers: 
- url: /js 
    static_dir: js 

/js는 메인 프로젝트 디렉토리의 하위 디렉토리를 나타내며, 당신이 거기에 정적 자바 스크립트 파일을 모두 넣을 수 있습니다. 프로덕션 서버에 업로드되며 다음과 함께 HTML에 포함 할 수 있습니다.

<script src="/js/jquery.js" type="text/javascript" ></script> 
+1

답장을 보내 주셔서 감사합니다.하지만 위의 내용과 같이 app.yaml을 구성하고 모든 javascirpt 파일을 js 하위 폴더에 저장하십시오. http : // localhost : 8080/js/jquery.js 요청 방법 : GET 상태 코드 : 404 찾을 수 없음 **, 고맙습니다 –

+9

app.yaml에서 url 핸들러의 순서를 확인하십시오. /.* 위에/js 처리기가 없다면 /.* 규칙은/js 규칙이 적용되기 전에 모든 GET 요청 (사용자의 js 디렉토리 포함)을 포착합니다. –

관련 문제