У меня есть вложенный список, который я динамически создаю с помощью jQuery в Ko ViewModel. Этот список может иметь бесконечные дочерние элементы, вот почему я делаю это с помощью jQuery, а не напрямую с KnockOut.Ko.applyBindings с полностью динамически создаваемыми элементами с jQuery
Моя проблема заключается в том, что каждый из этих динамически созданных дочерних элементов имеет функциональность, мне нужно подключиться к моей модели KnockOut ViewModel, но я не могу найти способ.
Херес JSFiddle с моим текущим кодом: http://jsfiddle.net/juandozco/691mqcub/5/
, что я пытался:
- пытался добавить все кнопки в массив, а затем сделать Еогеасп к этому массиву и запустить
ko.applyBindings(ViewModel, DOMElement)
, техника его подводит работа для меня. - попытался сделать
ko.applyBindings
сразу после создания кнопки, это не сработает, потому что DOMElement еще не существует, поэтому Ko can can do binding.
я связать click
событие с моими кнопками, с JQuery, я дал класс каждой из кнопок, а затем сделал: $(document).on("click","btnClass",function(){//code});
Но я уверен, что там должен быть лучший способ сделать это.
Любые рекомендации относительно того, как это сделать? или есть другой или более чистый способ сделать это?
Посмотрите на рекурсивных шаблонах: http://stackoverflow.com/questions/15525216/recursive-template-with-knockout-js –