我想在单击clear链接时使用javascript中的拼接删除整个列表

I want to remove the whole list using the splice in javascript when clear link is clicked

本文关键字:拼接 删除 列表 javascript 单击 clear 链接      更新时间:2024-02-16

下面是我用angular JS和HTML编写的代码。我有一个杂货清单,每个清单旁边都有删除链接,可以删除该商品。我还添加了一个清除列表链接,当点击它时,它应该会清除整个列表。但当我点击清除列表时,它一次只删除一个项目,而它应该删除整个列表。我使用了拼接来删除,并试图实现拼接,只是为了清除列表。

   <html ng-app="nameApp">
<head>
<meta charset="utf-8">
  <script src= "http://ajax.googleapis.com/ajax/libs/angularjs/1.2.1/angular.min.js"></script>
</head>
<body ng-controller="nameCtrl">
The list of groceries:</br>
<ul>
<a href="" ng-click="clear(name)">clear list</a>
<li ng-repeat="name in names">{{name}}
<a href="" ng-click="remove(name)">remove</a>
</li>
</ul>
</body>
</html>
<script>
var nameApp = angular.module('nameApp',[]);
nameApp.controller('nameCtrl',function($scope){
$scope.names = ['Eggs','Milk','Bread','Cheese'];
$scope.remove=function(name){
var i = $scope.names.indexOf(name);
$scope.names.splice(i,1);
}
$scope.clear=function(name){
var i = $scope.names.indexOf(name);
$scope.names.splice(i,5);
}
});
</script>

不需要splice,只需为变量分配空数组即可。

$scope.clear=function(name){
    $scope.names = [];
};