Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在django中获取javascript数组_Javascript_Jquery_Django_Arrays - Fatal编程技术网

在django中获取javascript数组

在django中获取javascript数组,javascript,jquery,django,arrays,Javascript,Jquery,Django,Arrays,这是我的密码: url.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 sho

这是我的密码:

url.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)
我得到了6,这是javascript数组的最后一个,我如何得到整个数组


提前谢谢

jQuery决定在字段名中添加方括号,这很可能是为了适应PHP。Django不需要它们,但不管怎样。访问
request.GET['arr[]]
request.GET.getlist('arr[]')

您还可以设置:

$.ajaxSettings.traditional = true;
这将使jQuery按照与Django一起工作的实际HTTP标准运行

当您不打算访问request.GET或request.POST(即ajax发布表单)时,这是必需的


明确建议在每个django项目中设置此选项。

实际请求URL是什么样子的?抱歉!我忘记返回html页面了,等一下minute@IgnacioVazquez Abrams我修正了我的问题,我把请求URL放在问题的底部contentrequest.GET.getlist('arr[])有效!!我收集了关于请求url的信息,arr%5B%5D=1&arr%5B%5D=2等于arr[]=1&arr[]=2。还有请求。GET返回QueryDict谢谢@Ignacio Vazquez Abrams^谢谢@jpic尽管如此,我尝试了你的建议,得到的请求url如下:***。我更改了request.GET.getlist('arr'),我也能用。谢谢你的建议~
$.ajaxSettings.traditional = true;