将 jQuery 事件附加到 AngularJS 结果

Attaching jQuery Event to AngularJS results

如何将 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);
        });
});

谢谢

理想情况下,您可以在 li

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

然后在你的控制器中

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

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