2011-02-24 1 views
0

정적 페이지처럼로드 된 경우 django와 함께 사용하면 jquery 코드가 작동하지 않는 이유는 무엇입니까?django 페이지에서 데이터를로드하는 중 jquery ajax에 문제가 발생했습니다.

어쩌면 장고의 csrf 보호가 어딘가에 관련되어 있지만 작동하게하는 방법을 찾을 수 없습니다.

편집, 벗었 코드 :


$(document).ready(function(){ 
$('.content').load('something.txt'); 
    $.ajax({ 
    method: "get",url: "http://something.com/pm/js/something.txt", 
    success: function(html) 
      { 
      $(".content").html(html); 
      } 
    }); 
}); 

이것의 목적은 다음과 같아야합니다 이 장고 페이지가로드, 스크립트가 그들로부터 다른 장고보기 (들) 및로드 데이터를 호출해야 할 때. 어쩌면 당신은로드 할 때 :

+0

여기 디버그 방법은 다음과 같습니다. 1. 클릭 처리기를 가져옵니다. 2. $ .ajax 내부에 오류 함수 매개 변수를 추가하십시오. 3. 방화범이나 찰스가있는 전화를 검사합니다. 아약스 중 어느 것이 작동하는지, 어떤 것은 작동하지 않는지는 말하지 않습니다. 또한 실행에 영향을 미칠 수있는로드중인 동적 데이터가 있는지 여부는 알 수 없습니다. – awongh

+0

나는 더 간단하게하기 위해 그것을 제거했다. 그러나 결과는 똑같다 : nginx가 제공하는 정적 페이지에서 아무런 문제없이 작동하며, 나는 django를 사용하여 동일한 작업을 수행 할 때 javascript를 무시한다. 나는 거기에 장고의 크로스 사이트 요청 위조 방지 관련이 의심하지만이 csrf/django/아약스에 관한 정보를 찾지 못했습니다 – nanook

+0

CSRF는 "게시"요청 대신 "요청"을 요청하기 때문에이 작업과 아무런 관련이 없습니다 . –

답변

0

나는 추측을거야

... 방화 이상 아무것도 표시되지 않습니다 (이 순간은 쉽게 'something.txt'정적 파일이 만들) Django가있는 페이지에는 정적 파일 제공 설정이 제대로되어 있지 않으므로 jQuery가로드되지 않으므로 Javascript가 실행되지 않습니다.

jQuery가로드되고 있는지 확인하려면 해당 페이지에서 방화 광구를 열고 인지 확인하십시오.

문제가 있다면 지금은 CDN에서 jQuery를로드하십시오.

<script src="http://code.jquery.com/jquery-1.5.1.js"></script>

관련 문제