2013-08-05 1 views
0

JS :JQuery와 - 장고

$(".collectionlist").click(function() { 
     alert('alert')  
     $.ajax({ 
      data:{ 
       csrfmiddlewaretoken: csrf_token, 
       collection:('{{collection}}')        
      }, 
      type:'POST', 
      url: '/collect/', 
      cache:false,    
      success: function(response) { 
      return true;       
      } 
     }); 
     }); 

HTML :

<form action="." method="POST">{% csrf_token %} 
<div id="report-collect"> 
    <button type="submit" class="collectionlist" >Save-Spreadsheet <img src="{{ STATIC_URL }}images/button-icon-ir-fwd.png" width="12" height="17" alt="" /></button> 
</form> 
</div> 

단추를 들어, 내가 ajax.The 문제를 통해 파일을 호출하도록 작성, JQuery와 함수를 클래스 이름을 부여했다 jquery 함수가 호출되지 않았습니다. 클래스 이름을 변경하고 시도했습니다. 경고 메시지가 표시되고 경고가 울리지 않습니다. 클릭이 발생하지 않습니다. 도움이 필요합니다.

+2

'collectionlist' 제출 버튼이 동적으로 생성 되었습니까? –

+0

'문서 준비'또는 페이지 끝 부분에 스크립트를 넣고 있습니까? (또는 그 중 아무 것도?) – Spokey

+0

@ palaѕн, 정적 버튼 – Royal

답변

3

그것은 다음 스크립트가

DOM 준비에서 실행되고 있지

$(document).on('click', '.collectionlist', function(){ 
    .... 
}) 

또는 이벤트 위임을 사용해야하기 때문에 collectionlist 요소가 동적으로 생성되는 다음과 같은 이유로

중 하나가 될 수

jQuery(function($){ 
    $(".collectionlist").click(function() { 
     .... 
    }); 
})