2014-02-21 90 views
0

我正面臨一個奇怪的問題。我正在使用Django 1.6。我從jquery ajax函數調用時獲取視圖的json響應。但是,'數據'沒有長度屬性!無法在Django中使用json響應

$.ajax({ 
     url: request_url, 
     dataType: 'json', 
     success: function(data){ 
     console.log(data); 
     console.log(data.length); //gives an error 

的打印的console.log

Object {2: "XX", 5: "YY"} 

我查看

def get_items(request, id): 

item_list = Items.objects.filter(cat = id) 
result = {} 
items_dict = {} 
for item in item_list: 
    items_dict[item .id] = item.name 

return HttpResponse(json.dumps(items_dict), content_type="application/json") 

爲什麼發生這種情況?

回答

1

對象在JavaScript中沒有.length屬性。使用以下來獲得長度:

Object.keys(<your-object-here>).length