Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.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
Ajax 如何从“中获取数据?”;“数据”;jQuery和Django中的变量_Ajax_Django_Jquery - Fatal编程技术网

Ajax 如何从“中获取数据?”;“数据”;jQuery和Django中的变量

Ajax 如何从“中获取数据?”;“数据”;jQuery和Django中的变量,ajax,django,jquery,Ajax,Django,Jquery,我觉得有点像这样: alert(data[0].fields.points); 我认为: from django.core import serializers 后来 data = serializers.serialize('json', MODEL.objects.filter(id=id), fields=('points')) return HttpResponse(data) 在我的jQuery中: $.ajaxSetup({ dataType: "json" }); $

我觉得有点像这样:

 alert(data[0].fields.points);
我认为:

from django.core import serializers
后来

data = serializers.serialize('json', MODEL.objects.filter(id=id), fields=('points'))
return HttpResponse(data)
在我的jQuery中:

$.ajaxSetup({
  dataType: "json"
});

$('#selector .selector_detail a').click(function() {
    var call_to = $(this).attr('href');

    $.ajax({
      url: call_to,
      type: "POST",

      complete: function() {
          console.log('Ajax Complete')
      },

      success: function(data) {
          points = data(fields.points)
          console.log('Ajax Successful')
          console.log(data);
     },

      error: function(xhr) {
          console.log('Whoops, something went wrong. XHR Response:' + JSON.stringify(xhr));
      },
    });

    return false;
});

我想要分数的价值,但我不知道如何把它拿出来。当我查看数据对象时,可以在console.log中看到它。我遗漏了什么?

如果数据是一个json对象,并且设置了正确的头,您可以使用点访问它的属性:

data.points

data[0].points  //if points is an array
//this is not correct
data(fields.points);
我不知道“数据”的确切结构是什么,但你可以从你的console.log(data)派生出来

编辑-如果数据具有您在注释中概述的结构,您可以访问如下点:

 alert(data[0].fields.points);

将数据类型:“json”添加到.ajax调用中

$.ajax({
  url: call_to,
  dataType: 'json',
  type: "POST",

然后在成功函数中显示jut data.points,或者可能是data.field.points。从你的帖子中我看不出来。

console.log语句打印的是什么?我猜
data
要么是
points
对象,要么包含一个属性
points
。它打印出来:“[{“pk”:3,“model”:“pointify.hero”,“fields”:{“points”:2758}]”这是我从数据中得到的:“[{“pk”:4,“model”:“pointify.hero”,“fields”:“{“points”:3102}]”我对此很陌生,因此,我不知道如何在比赛中得分。它看起来像一个阵列中的一个阵列?太棒了!!!非常感谢。关于[0]的快速问题。这不表示数组中的数字吗?我试图进入位置[3](#4,以0为基础计数),但这似乎不起作用。是的,它意味着位置0(这是数组中的第一个对象。实际上,可能您对位置3有问题,因为数组可能不是由四个对象组成的。“数据”似乎是一个对象数组,您可以用data.length检查它的长度;