2017-05-15 12 views
0

Djangoでは、私はajaxを使用してjsonを取得しようとしています。これを行う前に、私はjsonの代わりに一般的な文字列を出力しようとします。しかし、どのように試しても、データは正しく印刷されません。 result.htmlの文字「Good」が正常に出力されます。私は誤ってURLを使用したと思ったので、いくつかの方法で試してみましたが、うまくいきませんでした。Django:Ajaxレスポンスに何も表示されない

コードを見て、何が間違っていたかを詳しく教えていただければ幸いです。ここで

は私のコードです:

result.html

<!DOCTYPE html> 
<html> 
<head> 
<title>Hello Bubble Chart</title> 
<meta charset="utf-8"> 
</head> 
<body> 

<h1> Good</h1> 
<hr> 
<script src="http://code.jquery.com/jquery-lastest.min.js"></script> 
<script type="text/javascript"> 

$.ajax({ 
    type: "GET", 
    //dataType: "json", 
    url: "/help/", 
    data: {}, 
    success: function(response){ 
     alert(data); 
     $("body").append(data); 
    } 
}); 
</script> 
</body> 
</html> 

views.py

def json_data(request): 
    if request.is_ajax(): 
     message = "Yes, AJAX!" 
    else: 
     message = "Not AJAX" 
return HttpResponse(message) 

urls.py

urlpatterns = [ 
    url(r'^inputTest/$', views.input_V, name='input_V'), 
    url(r'^inputTest/result/$', views.result, name='result'), 
    url(r'^inputTest/process/$', views.process, name='process'), 
    url(r'^inputTest/help/', views.json_data, name='json_data'), 
    url(r'^admin/', admin.site.urls), 
] 
+0

url: "/ help /"、 'を' url:{%url 'json_data'%} "、' –

+0

に変更しようとしました。 – doniyor

+0

実際、 'url:"/help/"' equals 'url:" {%url 'json_data'%} "'。助けてくれてありがとう。 –

答えて

1

あなたのビューには、最初の

$.ajax({ 
    type: "GET", 
    url: "/help/", 
    success: function(data){ 
     alert(data); 
     $("body").append(data); 
    } 
}); 
+0

コンソールを確認しましたが、 'csrf_token'が問題でした。私がその問題を解決したとき、それはとてもうまく動作します。助けてくれてありがとう。 :) –

0

、あなたは結果ビュー上にある場合

def json_data(request): 
    if request.is_ajax(): 
     message = "Yes, AJAX!" 
    else: 
     message = "Not AJAX" 
    return JsonResponse(dict(message, message)) 

また、あなたのAJAX要求は、

する必要があり、このようにする必要があります修正する必要があるのはjquery CDNのURLのタイプミスです - それは次のようになります:

http://code.jquery.com/jquery-latest.min.js 

ない

http://code.jquery.com/jquery-lastest.min.js 

すなわち...latest...ない...lastest...

jqueryを使用しない場合、ajaxコールは機能しません。

+0

私はとても間違っています:<私を助けてくれてありがとう。 –

関連する問題