将jQuery事件附加到AngularJS结果

时间:2015-07-16 11:31:51

标签: jquery angularjs events repeat

如何将jQuery click事件添加到由AngularJS动态生成的li

Angular代码/数据库/过滤工作正常,我只想做到这一点,当你点击其中一个li时它会做一些事情。

我是Angular的新手

HTML

<li ng-repeat="data in filtered = (list | filter:search | orderBy : predicate :reverse) | startFrom:(currentPage-1)*entryLimit | limitTo:entryLimit" data-name="{{data.customerName}}" class="myli">
               <strong>{{data.customerName}}</strong><br />
               {{data.addressLine1}}, {{data.city}}, {{data.state}}, {{data.postalCode}}, {{data.country}}<br />
               <code>{{data.creditLimit}}</code>
</li>

的jQuery

$(document).ready(function(){
        $(".myli").on("click", function(){
            var name = $(this).data("name");
            alert(name);
        });
});

由于

1 个答案:

答案 0 :(得分:0)

理想情况下,您可以利用ng-click

上的li https://docs.angularjs.org/api/ng/directive/ngClick功能
<li ng-click="eventHandler(data)" ... class="myli">

然后在你的控制器中

scope.eventHandler = function(data){
     alert(data.name);
}

您现在已经删除了jquery依赖项,您可以更改所有元素类型,类,甚至是您想要在标记中调用数据元素的内容,而无需在控制器中更改代码