首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Angular typescript指令,在元素链接中查找div

Angular typescript指令,在元素链接中查找div
EN

Stack Overflow用户
提问于 2016-11-16 23:41:06
回答 1查看 450关注 0票数 0

我在Angular中使用了typescirpt。

我已经创建了一个指令,它只是一个包含文本的div和一个带有类名'block- close‘的关闭按钮

我需要给close按钮添加一个点击功能。

如何向指令中的按钮添加单击事件。

我试过像这样的东西

代码语言:javascript
复制
    angular.element('.block-close').on('click', function(){
        alert('here');
    });

    angular.element(document).find('.block-close').on('click', function(){
        alert('here');
    });

    (()=>{

        class MyDirective implements ng.IDirective{

            public restrict = 'E';
            public scope = {};
            public controller = 'MyController';
            public controllerAs = 'myCtrl';
            public bindToController = true;
            public templateUrl = "mysite.html";

            constructor(){

            }

            link = (scope, element, attrs) => {
                angular.element('.block-close').on('click', function(){
                    alert('here');
                });
            };

        }

        angular.module('myMod').directive('myDirective', ()=> new MyDirective());

    })();
EN

回答 1

Stack Overflow用户

发布于 2016-11-17 02:50:07

我只是假设你的"mysite.html“有这样的代码

代码语言:javascript
复制
<div>
<input type="button" value="close" class="block-close"/>
</div>

并且你想要处理点击事件,因为添加的按钮有"block-close“类。

实际上,在链接函数中,可以访问该指令作用域,因此只需添加一个如下所示的函数,

代码语言:javascript
复制
link = (scope, element, attrs) => {
                scope.closeClicked = () =>{
                           alert("clicked..");
                     }
            };

更新你的"mysite.html“,如下所示

代码语言:javascript
复制
<div>
    <input type="button" value="close" ng-click="closeClicked()" class="block-close"/>
</div>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40636199

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档