首页 > 解决方案 > 如何从角度 5 中的自定义属性中获取值?

问题描述

我是角度的新手。我已将自定义属性添加到 span 标签,如下所示

<span data-toggle="modal" data-target="#myModal" style="padding: 2px;cursor: pointer;background: #e60000;color: #fff" (click)="loadnewsdetail()" [attr.newsid]="news.NewsId">Read More </span>

我想获取属性 newsid 的值,因为我正在使用 jQuery 在下面的代码中执行此操作

 loadnewsdetail() {
         var a = $(this).attr('newsid');
         alert(a);
}

它给了我不确定的。如何以角度做到这一点以及为什么它是未定义的?

标签: javascriptjqueryangularangular5

解决方案


而不是获取 newsId,您可以将其作为参数传递click

(click)="loadnewsdetail(news.NewsId)"

并像这样得到它。

 loadnewsdetail(newsId) {

    alert(newsId);
  }

或者,如果您想获取属性,您可以将事件传递给函数(在您的情况下实际上不需要)。但是,您可以这样做。

(click)="loadnewsdetail($event)"

并使用

loadnewsdetail(newsId) { 
    alert(newsId.target.getAttribute("newsid"));
}

演示


推荐阅读