У меня есть объектный узел с несколькими атрибутами и массив атрибутов, который заполнен именами этих атрибутов.Я хочу пройти через цикл for и заполнить форму, используя значения атрибутов из узла.Код ниже:
function Node(parentNode, nodeID, fields, type){
this.id = nodeID;
this.fields = fields;
this.parent = parentNode;
this.type = type;
this.firstChild = null;
this.lastChild = null;
this.previousSibling = null;
this.nextSibling = null;
}
var runTerminalNode = function(node, count){
var form = document.createElement('form');
form.setAttribute('method', 'GET');
form.setAttribute('action', '/table/');
form.setAttribute('target', '_blank');
var attributes = ['id', 'fields', 'type']
for (i in attributes){
var input = document.createElement('input');
input.type = 'hidden';
input.name = attributes[i];
input.value = node.attributes[i];
form.appendChild(input);
}
}
var nodeObject = allNodes[nodeID];
runTerminalNode = (nodeObject, 0);
Где allNodes - это карта, где nodeID - это ключ, а объект Node - это значение.
Ошибка, которую я получаю: «Не могу прочитать»свойство '0' из неопределенного ", так как node.attributes разрешается в неопределенное, и он пытается прочитать первый объект в неопределенном массиве.Я хочу, чтобы он читал как node.id, node.fields и node.type.Кто-нибудь знает способ решения этой проблемы?