ここに私のコードがあります:
urls.py:
from django.conf.urls import patterns
from views import show,showpage
urlpatterns = patterns('',
(r'^$',showpage),
(r'^show/$',show),
)
ビュー.py
from django.http import HttpResponse
def show(request):
arr = reqeust.GET.get('arr','Nothing')
print arr#**it's 'Nothing'**
if arr == 'Nothing':
msg = 'fail'
else:
msg = 'pass'
return HttpResponse(msg)
def showpage(request):
html = ''' <html>
<head>
<script language="javascript" type="text/javascript" src="/site_media/js/jquery-1.7.2.js"></script>
</head>
<body>
<input type="button" id="input_btn"/>
</body>
<script language="javascript" type="text/javascript">
$(function(){
$("#input_btn").bind("click",function(){
arr = [1,2,3,4,5,6]
$.ajax({
type:"GET",
url:"/show/",
data:{arr:arr},//**I want pass the arr to django**
success:function(data){alert(data);},
error:function(data){alert(data);}
});
});
})
</script>
</html>'''
return HttpResponse(html)
localhost:8000にアクセスしてボタンをクリックすると、バックエンド コンソールに「Nothing」と表示されます。フロントエンドで「fail」というメッセージが表示されます。
ええと..誰でもこの問題を解決できますか?リスト( )またはこのようなものarr = reqeust.GET.get('arr','Nothing')
を返すコード( )を取得したい[1,2,3,4,5,6]
------append1-------
btnをクリックすると、コンソールにこれが表示されます
[2012/06/12 09:48:44] "GET /show/?arr%5B%5D=1&arr%5B%5D=2&arr%5B%5D=3&arr%5B%5D=4&arr%5B%5D=5&arr% 5B%5D=6 HTTP/1.1" 200 4
------apend2-------
コードを次のように修正しました。
arr = request.GET.get('arr[]','Nothing')
javascript配列の最後の1つである6を取得しましたが、配列全体を取得するにはどうすればよいですか?
よろしくお願いします!