Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.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
Jquery 如何在ajax中访问django对象_Jquery_Ajax_Django - Fatal编程技术网

Jquery 如何在ajax中访问django对象

Jquery 如何在ajax中访问django对象,jquery,ajax,django,Jquery,Ajax,Django,我想在ajax代码中访问django对象。但我无法访问它。请引导我 我的服务器代码 Ajax代码 在浏览器控制台中,输出为 [{"model": "sample.events", "pk": "E22", "fields": {"eventcode": "1", "collegecode": "KIT", "eventopenflag": "1", "eventstartdate": "2017-07-23", "eventenddate": "2017-07-22", "eventloca

我想在ajax代码中访问django对象。但我无法访问它。请引导我

我的服务器代码


Ajax代码


在浏览器控制台中,输出为

[{"model": "sample.events", "pk": "E22", "fields": {"eventcode": "1", "collegecode": "KIT", "eventopenflag": "1", "eventstartdate": "2017-07-23", "eventenddate": "2017-07-22", "eventlocation": "Shivaji memorials , kolhapur", "academicyear": "2017", "eventlevel": 5, "eventhours": 0}}]
请纠正我。

您可以使用类似于python字典的方法

因为要返回一个数组,所以必须首先对其进行迭代。假设将返回的数组命名为
response.events
,则:

success:function(response) {
    // convert String to JSON object (JS object)
    var events = JSON.parse(response.events);  // events should be an Array (console.log(events instanceof Array) should yield True)
    for (var i=0; i<events.length; i++) { 
        // now each events[i] has an object within it
        var obj = events[i];  // obj is an alias for each object in the array
        // Now you can access each key-value pair like this
        var fields = obj.fields;  // an alias again
        var eventcode = fields.eventcode;  // or fields['eventcode']
        var collegecode = fields.collegecode;
        // etc.
    }

response.events
是一个JS数组,其中包含JS对象。你到底想访问什么?字段中的所有内容:{“eventcode”:“1”,“collegecode”:“KIT”,“eventopenflag”:“1”,“eventstartdate”:“2017-07-23”,“eventenddate”:“2017-07-22”,“eventlocation”:“Shivaji memorials,kolhapur”,“academicyear”:“2017”,“eventlevel”:5,“eventhours”:“0}var obj=response.events[i];有了这个,我只得到了[作为一个输出,其余的都是未定义的。为什么呢?它没有被正确地序列化吗?
console.log(response.events);
inside
success
prints
[{“model”:……}]
?我在回答中写的内容应该放在
函数(response)
控制台输出中,用于response.events[0]is TypeError:response.events未定义响应.events[0]的输出是什么?构造函数??
[{"model": "sample.events", "pk": "E22", "fields": {"eventcode": "1", "collegecode": "KIT", "eventopenflag": "1", "eventstartdate": "2017-07-23", "eventenddate": "2017-07-22", "eventlocation": "Shivaji memorials , kolhapur", "academicyear": "2017", "eventlevel": 5, "eventhours": 0}}]
success:function(response) {
    // convert String to JSON object (JS object)
    var events = JSON.parse(response.events);  // events should be an Array (console.log(events instanceof Array) should yield True)
    for (var i=0; i<events.length; i++) { 
        // now each events[i] has an object within it
        var obj = events[i];  // obj is an alias for each object in the array
        // Now you can access each key-value pair like this
        var fields = obj.fields;  // an alias again
        var eventcode = fields.eventcode;  // or fields['eventcode']
        var collegecode = fields.collegecode;
        // etc.
    }
success:function(response) {
    var events = JSON.parse(response.events);
    var obj = events[0];
    var fields = obj.fields;
    ...
}