angular.js - 为什么给 Angular 指令绑定事件无法生效
过去多啦不再A梦
过去多啦不再A梦 2017-05-15 17:03:39
[AngularJS讨论组]

因为刚刚接触 Angular,所以有些概念还很模糊,对于这个问题尝试通过 Google 查找答案,但并未找到合适的解答,所以想在这里请教一下各位,这里是一个大概的代码:

如果把 ng-repeat 去掉,JS 代码的效果可以实现,但是加上 ng-repeat 后,效果就不存在,这里是因为 Angular 作用域的问题吗?

过去多啦不再A梦
过去多啦不再A梦

全部回复(4)
黄舟
<p ng-repeat="item in list" id="need-another-js"></p>
<!--ng-repeat生成了一系列id为need-another-js的DOM元素,而DOM元素的ID是不能重复的-->
<script>
    $('#need-another-js').click(function(){//可能在ng-repeat还未执行完成的时候便执行了
    //需在ng-repeat执行完成时,设置onclick事件才有效
        // do something
    })
</script>
大家讲道理

angular有它支持的绑定事件 ng-click

你可以尝试一下这样写

<p ng-repeat="item in list" ng-click="click()"></p>
<script>
    //省略其他控制器的写法
    $scope.click = function() {
       //do something
   }
</script>
PHP中文网

我学angular的时候,直接就从jq换成angular了,jq能做的angular都能做

过去多啦不再A梦

ng-repeat是动态添加dom元素,你给动态添加的元素用click方法绑定事件是不会触发的。如果你喜欢用jquery,就用leftstick提出的方法,但建议使用mumofa提出的angular方法

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号