저는 AJAX와 JQuery를 처음 사용하기 때문에 가장 간단한 AJAX POST를 구현하려고합니다. 아이디어는 다음과 같습니다. 버튼이 있고 클릭하면 기본 POST 데이터를 같은 페이지 (http : // {{my ip address}}/django/ajax /)에 제출하고 싶습니다.Django/AJAX/JQuery - 간단한 POST 문제
<script type="text/javascript">
function pythonizer(){
$("#msgid").append("it SHOULD post after this is appended");
$.ajax({
url: '/django/ajax/',
type: 'POST',
data: {'obj': "test string"},
dataType: 'json',
contentType: "application/json; charset=utf-8",
success: function(response) {
alert(response);
}
});
}
</script>
<div id="msgid">
</div>
<input type="button" id="myButton" value="click me" onclick="pythonizer()" />
그리고 view.py 내 관련 기능은 다음과 같습니다 : 내 .html 파일에서
나는이 간단한
def ajax(request):
if request.method == 'POST':
return HttpResponse("Hello AJAX")
return render_to_response('huh.html', {})
, 맞죠? 그러나 문제는, 내 버튼을 클릭하면 "이 코드가 추가되어야합니다."가 div에 성공적으로 추가되었지만 HttpResponse ("Hello AJAX")가 반환되지 않고 POST가 수행되지 않습니다. 일!
필자가 작성한 문서는 내가 읽은 문서와 일치하는 것으로 보이지만 바보 같은 것을 놓치고 있거나 POST를 단순화하려는 느낌이 들었습니다. 미리 감사드립니다!
당신이 JS 오류가 있습니까? 어쩌면 JS var "데이터"는 정의되지 않았습니다. – Guy
좀 더 명확하게 변경했습니다. 이제 데이터입니다 : { 'obj': "test string"}. 그러나 POST는 여전히 성공적으로 작동하지 않습니다. –