Я добавляю данные в форму из объектов, которые могут быть многослойными.Добавить данные вложенных объектов в форму
Форма Пример
<form id="myForm">
<input name="foo" />
<input name="bar" />
</form>
Пример данных
var myData = {
level1: {
foo: 'hello',
level2: {
bar: 'greetings'
}
}
}
Добавить данные для формирования
$.each(data, function (i, e) {
var field = $('[name="' + i + '"]');
if (field.is('input')) field.val(e);
});
Теперь о Очевидно, это не сработает, поэтому у меня есть два варианта.
A) Свести объект
var myResult = {
level1 : '',
foo : 'hello',
level2 : '',
bar : 'greetings'
}
B) Рекурсивный пройти через объект
Но я думаю, что даже делать, мне нужно сделать В любом случае. Таким образом, B - это более быстрый выбор. Теперь, как я рекурсивно просматриваю объект? Я работал над этой скрипкой и пытался реализовать рекурсивный цикл for, но этот цикл не извлекает значение из свойства объекта. Я довольно испорчен использованием jq $ .each, но я не знаю, будет ли это работать в этом случае.
http://jsfiddle.net/6d7L9qpw/1/
Почему вы удалили это из принятого ответа? @tdoakiiii – mohamedrias
Авария. Спасибо за ответ, вот мой реализованный результат (я хотел, чтобы данные были драйвером здесь) http://jsfiddle.net/6d7L9qpw/2/ – tdoakiiii