Я пытаюсь создать 3-уровневую навигацию с помощью knockout.js. Из статического шаблона навигации у меня есть информация о том, что класс ul.withsubdrop для 2-го ul-элемента должен быть установлен только в том случае, если присутствует 3-е подменю, иначе нет. Как я могу это сделать, поскольку я оцениваю, существование меню третьего уровня намного позже в коде? Можете ли вы указать мне правильное направление? Спасибо.knockout.js - Как добавить имя класса к элементу
<!-- LEVEL 1 -->
<ul data-bind="foreach: entries">
<li>
<a data-bind="attr: {href: url}, text: title"></a>
<!-- LEVEL 2 -->
<!-- ko with: $data.menu -->
<ul class="withsubdrop" data-bind="foreach: entries">
<li>
<a data-bind="attr: {href: url}, text: title"></a>
<!-- LEVEL 3 -->
<!-- ko with: $data.menu -->
<ul data-bind="foreach: entries">
<li><a data-bind="attr: {href: url}, text: title"></a></li>
</ul>
<!-- /ko -->
</li>
</ul>
<!-- /ko -->
</li>
</ul>
<script>
$.getJSON("/rest/menu/1.0/json", function(allData) {
ko.applyBindings(ko.mapping.fromJS(allData));
});
</script>
Можете ли вы показать нам, куда он должен идти? У вас там много html, и это путано читать –
Я упростил код, извините за это. – ttheb