Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在angularjs中使用单击事件工作?_Javascript_Json_Angularjs - Fatal编程技术网

Javascript 如何在angularjs中使用单击事件工作?

Javascript 如何在angularjs中使用单击事件工作?,javascript,json,angularjs,Javascript,Json,Angularjs,我在我的页面中获得了JSON数据,我想使用下面的代码将“喜欢”和“不喜欢”选项包含到带有单击事件的按钮中 但我无法得到结果。我不知道如何循环数组 //code for like and dislike buttons $scope.li = function(ep1){ ep1.cue.episode.ratings.loved = (ep1.cue.episode.ratings.loved) + 1;

我在我的页面中获得了JSON数据,我想使用下面的代码将“喜欢”和“不喜欢”选项包含到带有单击事件的按钮中

但我无法得到结果。我不知道如何循环数组

//code for like and dislike buttons

$scope.li = function(ep1){
                    ep1.cue.episode.ratings.loved = 
                    (ep1.cue.episode.ratings.loved) + 1;
                    if ((ep1.cue.episode.ratings.hated) > 0)
                        ep1.cue.episode.ratings.hated = 
                        (ep1.cue.episode.ratings.hated) - 1;
                    ep1.liked = true;
                    ep1.disliked = false;
                };

代码中有两个问题都很容易解决

  • 您的按钮正在尝试传递不是在对象上定义的变量的
    episod
    。试试看:
    ng click=“likeme(tvshow.插曲)”

  • 您的接收函数正在树中搜索一个插曲,但没有传递到树,它已经提供给该插曲。因此,与其使用
    parseInt(episod.tvshow.eption.ratings.loved)
    ,不如尝试使用
    parseInt(episod.ratings.loved)

  • 编辑


    我把你的代码[这里][1]分叉了。注意对函数和HTML的更改。将插曲传递给函数,并在函数内部,仅对插曲进行操作。

    能否显示接收JSON数据的代码?解释你所说的“无法得到结果”是什么意思,并说明你无法循环通过的数组是什么?我在你的问题中没有看到任何代码。我很困惑;您是否建议当您通过其他方式接收到与plunker中相同的数据结构时,您无法对其运行该代码?好的,我实际上看得更仔细一些,这两个示例没有任何关联。我在这两个示例中都没有看到此页面中的代码,您也没有说明什么不起作用。是的,但在第一个示例中,您没有按钮!您也没有在项目中“无法工作”的代码,因此不可能知道它工作或不工作的原因。您是否要求我们为您将其中一个集成到另一个中?函数声明是可以的,它将获取一个片段并将其存储在
    episod
    变量中。函数中的计算不需要额外的级别。因此,您可能需要小心变量名的拼写错误。哪部分没有意义?这是一个非常基本的JavaScript概念,我尽我所能描述了在不为您工作的情况下出现的问题。是的,它工作得很好。非常感谢,先生。向你的理解和知识致敬。如果你不介意,请删除你的分叉代码。谢谢你。