我试图移除ngRepeat
内的元素。它移除得很好,但在删除元素后,页面将被重新加载。如何防止此重新加载操作?
下面是代码:
<li ng-repeat="task in tasks">
<p>{{task.title}}</p>
<button ng-click="remove($index)">Click me</button>
</li>
js范围:
$scope.remove = function($index){
$scope.tasks.splice($index, 1);
}
答案 0 :(得分:4)
根据W3C规范,类型未定义,并且它假设提交。添加type='button'
可以为您解决问题。
<li ng-repeat="task in tasks">
<p>{{task.title}}</p>
<button type="button" ng-click="remove($index)">Click me</button>
</li>
相关的specification,如果你很好奇。
答案 1 :(得分:1)
<button>
表现得像submit
(感谢@Antiga),我尝试将其更改为input[type=button]
,但仍无效。
我刚做了这个改变:
<button ng-click="remove($index)">Click me</button>
为:
<a ng-click="remove($index)">Click me</a>
它运作良好。