У меня есть этот уродливый список выбора с отступами ("-") для иллюстрации иерархии. Я хотел бы, используя jquery, получить данные из источника в результат.
Источник
<option value="12">Subcontractor</option>
<option value="108">-Surveyor</option>
<option value="62">--Excavation works</option>
<option value="554">--Concrete works</option>
<option value="44">-Demolition works</option>
<option value="103">--Site preparation works</option>
<option value="67">--Excavation works</option>
<option value="40">--Contamination works</option>
Пример показывает 4 уровня, но количество уровней неизвестно.
РЕЗУЛЬТАТ
var result = {
"Subcontractor":12 {
"Surveyor":108 {
"Excavation works":62,
"Concrete works":554
},
"Demolition works":44 {
"Site preparation works":103,
"Excavation works":67,
"Contamination works":40
}
}
};
Обратите внимание, как значение параметра добавляется только к самому глубокому уровню. ОБНОВЛЕНИЕ: обновлен результат для более быстрого кода и согласованности, у родителей отсутствует значение, поэтому анализ должен быть более сложным.
Мои навыки работы с jquery средние, но я думаю, я мог бы это выяснить, если бы кто-то мог предложить направление.