У меня есть следующий объект JSON, загружаемый в мое приложение и сохраняемый в переменную с именем obj:
{
"items" : [
{
"name" : "item-1",
"group" : [
{
"groupName" : "name-1",
"groupPosition" : 2
},
{
"groupName" : "name-2",
"groupPosition" : 1
}]
},
{
"name" : "item-2",
"group" : [
{
"groupName" : "name-1",
"groupPosition" : 1
},
{
"groupName" : "name-2",
"groupPosition" : 2
}]
}]
}
Затем я делаю следующее:
var groups = new Array();
var items = new Array();
$.each(obj.items, function(i,r){
var itemName = r.name;
$.each(r.group, function(index, record){
if ($.inArray(record.groupName) == -1) {
groups.push(record.groupName);
$('body').append('<div id="record.groupName"></div>');
}
$('#'+record.groupName).append('<div id="itemName">itemName</div>');
// At this point I'm stuck as the items get added in order of iteration,
// not according to their record.groupPosition value.
});
});
В конечном итоге будет несколько сотен «предметов», каждый из которых содержится в неустановленном количестве «групп».
Проблема, с которой я столкнулся, заключается в том, как выполнить итерацию по объекту JSON с помощью jQuery или хорошего ol'JavaScript и отобразить элементы в правильной позиции в каждой группе, поскольку элементы и группы не будут перечислены внутри объекта JSON в последовательном порядке.
Любая помощь будет принята с благодарностью!
Спасибо.
javascript,jquery,json,