2015-04-30 126 views
-1

我想在html页面中获取json数据,所有的数据都在读取,但只有一个数据没有读取原因?这是我的代码。如何从json api获取数据

这是我的JSON数据,我必须获取“classified_id”,但它显示未定义。

{ 
    "status": 200, 
    "message": "classification Created successfully", 
    "news_data": { 
     "name": "abc", 
     "description": "hello everyone", 
     "email_id": "[email protected]", 
     "phone": "9097817522", 
     "classified_id": 102 
    } 
} 

这里是我的js文件,我正在获取json数据。

success: function(data) { 
    var arr = data.data; 
    var htmlText = ''; 

    for (var key in arr) { 
     htmlText += '<div onclick="delete('+ arr[key].classified_id +')" ></div>'; 
     htmlText += '<p class="user-name"> Name: ' + arr[key].name + '</p>'; 
     htmlText += '<p class="user-loc"> Description: ' + arr[key].description + '</p>'; 
     htmlText += '<p class="user-desc"> Email: ' + arr[key].email_id + '</p>'; 
     htmlText += '<p class="user-desc"> Phone: ' + arr[key].phone + '</p>'; 
    } 

    $('.feed-activity-list').append(htmlText); 
} 

请帮我解决这个问题。 在此先感谢。

+0

必须分类我猜。关于主题:由于您正在做一个for循环,请向我们展示完整的数据。 –

回答

1

如果你单独确定键你不需要循环:

var arr = data.news_data; 
var htmlText = ''; 
htmlText += '<div onclick="delete(' + arr.classified_id + ')" ></div>'; 
htmlText += '<p class="user-name"> Name: ' + arr.name + '</p>'; 
htmlText += '<p class="user-loc"> Description: ' + arr.description + '</p>'; 
htmlText += '<p class="user-desc"> Email: ' + arr.email_id + '</p>'; 
htmlText += '<p class="user-desc"> Phone: ' + arr.phone + '</p>'; 

DEMO

+0

谢谢@Andy对你的建议,我得到了我想要的解决方案。 – Sam

1
var data = { 
    "status": 200, 
    "message": "classification Created successfully", 
    "news_data": { 
     "name": "abc", 
     "description": "hello everyone", 
     "email_id": "[email protected]", 
     "phone": "9097817522", 
     "classified_id": 102 
    } 
}; 
var arr = []; 
    arr.push(data.news_data); 
    var htmlText = ''; 

    for (var key in arr) { 
     htmlText += '<div onclick="delete('+ arr[key].classified_id +')" > classified_id: ' + arr[key].classified_id + '</div>'; 
     htmlText += '<p class="user-name"> Name: ' + arr[key].name + '</p>'; 
     htmlText += '<p class="user-loc"> Description: ' + arr[key].description + '</p>'; 
     htmlText += '<p class="user-desc"> Email: ' + arr[key].email_id + '</p>'; 
     htmlText += '<p class="user-desc"> Phone: ' + arr[key].phone + '</p>'; 
    } 

    $('.feed-activity-list').append(htmlText); 

Demo

+0

@山姆你需要循环,如果你'news_data'有更多'object' – ozil