Я пытаюсь создать массив массивов для таблицы (используя титры из dynaTree, внутри функции onSelect). Я могу успешно извлечь заголовки dynatree из узлов, но независимо от того, что я делаю, я не могу создать массив массивов из этих значений.jquery map и массив массивов с dynatree
только массив заголовков строк ... базовая линия возврата игнорирует скобки и сращивание массива?
onSelect: function(flag, node)
{
var selectedNodes = node.tree.getSelectedNodes();
var selectedKeys = $.map(selectedNodes, function(node)
{
return node.data.id;
});
var selectedTitles = $.map(selectedNodes, function(node)
{
var name = node.data.title;
name = name.substring(0,4);
if(name == 'Room')
{
var floor = node.getParent();
var building = floor.getParent();
//PROBLEM CODE(not creating arrays):
return([node.data.title,floor.data.title,building.data.title]);
}
});
console.log("Selected Titles: " + selectedTitles);
},
ТЕКУЩИЕ РЕЗУЛЬТАТЫ:
Selected Titles: Room 115,Floor 1,Chemistry, Room 116,Floor 01,Chemistry,
Room 114,Floor 01,Chemistry, Room 113,Floor 01,Chemistry, Room 112,Floor
01,Chemistry, Room 110,Floor 01,Chemistry, Room 109,Floor 01,Chemistry, Room
109A,Floor 01,Chemistry
ЖЕЛАЕМЫЕ РЕЗУЛЬТАТЫ:
Selected Titles: [Room 115,Floor 1,Chemistry],[Room 116,Floor 01,Chemistry],
[Room 114,Floor 01,Chemistry],[Room 113,Floor 01,Chemistry],[Room 112,Floor
01,Chemistry],[Room 110,Floor 01,Chemistry],[Room 109,Floor 01,Chemistry],
[Room 109A,Floor 01,Chemistry]
Вы можете предоставить jsfiddle с данными образца? а также попытайтесь удалить 'join (", ")'. –
Не используйте оповещение, чтобы проверить результирующий файл. Запишите его на консоль. Не знаете, почему вам нужно использовать 'splice()', когда вы не меняете исходную структуру. – charlietfl
Наверняка вы хотите 'return [node.data.title, floor.data.title, building.data.title]'? –