Javascript 如何使ngclick像切换一样工作?
我取了一个跨度,单击该跨度后,它会向其中添加1。但我需要的是,ngclick应该只向范围内的任何值添加一次。再次单击时,应从中减去1。它不应该连续迭代。Javascript 如何使ngclick像切换一样工作?,javascript,angularjs,Javascript,Angularjs,我取了一个跨度,单击该跨度后,它会向其中添加1。但我需要的是,ngclick应该只向范围内的任何值添加一次。再次单击时,应从中减去1。它不应该连续迭代。 我从json数据中获取{{tvshow.eption.ratings.loved}}。 请帮忙 //html <html> <body> <span class="label likeme" ng-click="tvshow.episode.ratings.loved = tvshow.episode.r
我从json数据中获取{{tvshow.eption.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>
//html
{{tvshow.插曲.收视率.喜爱}
//view.html
<span ng-click="doOneTimeOnly();">{{tvshow.episode.ratings.loved}}</div>
{{tvshow.eption.ratings.loved}
//controller.js
$scope.times = 0;
$scope.doOneTimeOnly = function () {
if ( $scope.times < 1) {
//do my stuff with the tvshow.episode.ratings.loved
//.................
$scope.times += 1;
}
}
$scope.times=0;
$scope.doOneTimeOnly=函数(){
如果($scope.times<1){
//做我的电视节目。插曲。收视率。爱
//.................
$scope.times+=1;
}
}
事实上,我认为这没有道理,但这正是你所要求的:p
这也可以很容易地移动到自定义指令,如
指令('ngOneClickOnly')代码>例如现在您有一个选项ng已禁用,您只能单击一次
<script>
angular.module("my_app",[])
.controller("my_ctr",function($scope){
$scope.skm=true;
$scope.mmmmmm=function()
{
if($scope.skm==false)
{
alert("first time you clicked");
}
else
{
alert("now you cant click");
$scope.skm=false;
}
}
})
</script>
<body ng-app="my_app" ng-controller="my_ctr">
<button ng-click="mmmmmm()" ng-disabled="!skm">hii</button>
</body>
angular.module(“我的应用程序”[])
.controller(“我的中心”,功能($scope){
$scope.skm=true;
$scope.mmmm=函数()
{
if($scope.skm==false)
{
警报(“您第一次单击”);
}
其他的
{
警告(“现在你不能点击”);
$scope.skm=false;
}
}
})
hii
{{tvshow.eption.ratings.loved}}可以是0到100之间的任意数字。@madhukumar是的,这是您运行ng click仅1次的方式,UpdateEdit正在不断迭代。此代码对我有效……告诉我在使用此代码时您的代码出了什么问题。。