2014-05-11 9 views
0

다음은 ajax .load()를 사용하여 입력 상자에서 django 템플릿을로드하는 예제입니다. 포스트 방법POST 요청을 전달하는 .load()

$.ajax({ 
     url : "/ajaxexample_json", 
     type : "POST", 
     dataType: "json", 
     data : data2, 
     success : function(json) { 
      show_results(json); 
     }, 
     error : function(xhr,errmsg,err) { 
      alert(xhr.status + ": " + xhr.responseText); 
     } 
     }); 
     return false; 
    }); 

에 대한 그리고 views.py에서 views.py

return render_to_response(template, data, context_instance = RequestContext(request)) 

대 스크립트로드 방법

$(document).ready(function() { 
    $('#searchSubmit').click(function() { 
     q = $('#q').val(); 
     $('#results').html(' ').load('{% url "demo_user_search" %}?q=' + q); 
    }); 
}); 

에 대한

스크립트

return HttpResponse(simplejson.dumps(response_dict), mimetype='application/javascript') 

POST 메소드가 성공했을 때 render_to_response 템플릿을로드 할 수있는 방법이 있는지 모르겠다. 지금까지 200 : 오류 및 팝업을 시도하고 얻었습니다 (관련 txt/html 팝업에서 렌더링 됨).

.load() 함수를 사용하여 POST를 제출할 수 있습니까?

답변

1

$.load()을 사용할 때 POST을 사용하려면 JSON 객체를 두 번째 매개 변수로 전달해야합니다. 두 번째 매개 변수 (객체 인 경우)는 데이터로 처리되어 POST 요청을 통해 백엔드로 전송됩니다. http://www.micahcarrick.com/ajax-form-submission-django.html, 그것은 비록 : 나는 여기 예를 발견 -

Source 당신 말이 맞아

+0

('신청 방법'을 찾아) 약간 일자. – user3467349

관련 문제