我已经获取了一个跨度,单击该跨度后,它会加 1。但我需要的是,ngclick 应该只添加一次到范围内的任何值。再次点击它应该减去 1。它不应该连续迭代。 我从 json 数据中获取 {{tvshow.episode. ratings.loved}} 。 请帮忙。
//html
<html>
<body>
<span class="label likeme" ng-click="tvshow.episode.ratings.loved = tvshow.episode.ratings.loved + 1" ng-init="{{tvshow.episode.ratings.loved}}">
<i class="icon-thumbs-up"></i> {{tvshow.episode.ratings.loved}}</span>
</body>
</html>
最佳答案
//view.html
<span ng-click="doOneTimeOnly();">{{tvshow.episode.ratings.loved}}</div>
//controller.js
$scope.times = 0;
$scope.doOneTimeOnly = function () {
if ( $scope.times < 1) {
//do my stuff with the tvshow.episode.ratings.loved
//.................
$scope.times += 1;
}
}
实际上我认为这没有意义,但这正是您所要求的:P
这也可以轻松移动到自定义指令,例如 directive('ngOneClickOnly');
关于javascript - 如何让 ngclick 像切换一样工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27201729/