嵌套元素和指令

时间:2016-03-29 11:16:57

标签: javascript html angularjs

我在这里得到了解决方法,需要一些帮助。它是一种类别的树。某些类别可以通过复选框选择。

我认为最干净的方法是通过方向。在<li kw-category-node>元素上放置一个on('click', function())处理程序,然后执行选择工作(将对象添加到数据等)。

所以我提出了这个HTML

<script type="text/ng-template" id="category_renderer.html">
   <div ng-if="true == true" ng-mouseenter="over = true" ng-mouseleave="over = false">
       <input type="checkbox" 
            ng-model="assignedCategories[category.category_id]"
            ng-if="category.childs.length == 0"
            ng-click="toggleCategory(category)">
        </input> {{ category.name }} 
        <a href ng-if="over" ng-click="categories.remove(category)">
              <small> <i class="fa fa-times"></i> Entf </small>
        </a>
  </div>

  <ul class="list-unstyled">
         <li ng-repeat="category in category.childs"
             ng-include="'category_renderer.html'"
             kw-category-node>
         </li>
  </ul>
</script>

<ul class="list-unstyled" kw-category-tree>
     <li ng-repeat="category in categories.tree"
         ng-include="'category_renderer.html'"
         kw-category-node>
     </li>
</ul>

这样的指令

admin.directive('kwCategoryNode', ['$interval', 'dateFilter',   function($interval, dateFilter) {

function link(scope, element, attrs) {


  element.find('input').on('click', function() {

      alert("wow, what a click!");

  });


}

但是element.find("input")不会给我那个输入元素。也许DOM不是完全加载的,或者我只是倾斜。

由于

0 个答案:

没有答案