如何从ul中删除所有li?

时间:2015-09-15 07:15:14

标签: angularjs angularjs-ng-repeat

我在列表中有5个项目。我想要删除所有这些。

查看

plnkr.co/edit/mYRdNuhuofYIERvA9wOI?p=preview

JS

ob = getNodeName(ob, "TH");

3 个答案:

答案 0 :(得分:4)

  

使用AngularJS添加和删除列表项

Jsfiddle link

HTML code:

  <div ng-app="myApp">
    <ul ng-controller="ItemsController" class="nav">
        <input type="text" value="ItemName" ng-model="newItemName"
        placeholder="name of new item...">
            <button ng-click="addItem()">Add Me</button>
             <button ng-click="rem()">Remove all</button>
        <li ng-repeat="item in items.data" id="item{{item.id}}">
            <a href="#">{{item.title}}</a>  <a ng-click="deleteItem($index)" class="delete-item">x</a>
        </li>
    </ul>
</div>

添加项目:

$scope.addItem = function (index) {
        items.data.push({
            id: $scope.items.data.length + 1,
            title: $scope.newItemName
        });
    }

删除项目:

  $scope.deleteItem = function (index) {
        items.data.splice(index, 1);
    }

删除所有项目:

$scope.rem = function (index) {
  $scope.items=[];
}

答案 1 :(得分:1)

在您的方案中,您要删除html元素。因此,首先将选择器定义为html元素,即<li class="tagClass" ng-repeat="tag in list">,然后在JS文件中使用 tagClass

<强> JS

 angular.forEach(angular.element('.tagClass'),function(value,key){
        var data = angular.element(value);
         data.remove();
 });

答案 2 :(得分:0)

您可以将列表清空为$scope.list = [];,或者如果您不希望列表为空并且使该微粒li不可见,则可以将一个属性添加到列表项{{1}并使用isVisible指令:

ng-show