如何将ngRepeat内容复制到另一个分区中
How to copy ngRepeat content into another div?
我使用angular列出了一个json文件,如下所示:
html:
<li ng-repeat="task in tasks">
<h1>{{task.title}}</h1>
<small>{{task.date}}</small>
<p>{{task.details}}</p>
<button ng-click="details($event)" data-title="{{task.title}}" data-date="{{task.date}}" data-details="{{task.details}}"></button>
</li>
js:
$scope.details = function(obj){
var title = obj.target.getAttribute('data-title'),
date = obj.target.getAttribute('data-date');
...
}
我通过data-attributes
传递所有内容,当我点击<button>
时,它会调用ng-click
,我通过纯javascript访问所有data-attributes
,并创建一个<div>
来包装这些内容。这种方法很好,但有没有一种更简单的方法可以通过角度获得这些值?
更简单、更恰当的角度方式,是的,只需通过ng-click函数表达式传递task
,并从处理程序访问它,然后告别控制器的DOM访问(无论如何都很糟糕)和数据属性:-
<li ng-repeat="task in tasks">
<h1>{{task.title}}</h1>
<small>{{task.date}}</small>
<p>{{task.details}}</p>
<button ng-click="details(task)"></button>
</li>
和
$scope.details = function(task){
console.log(task);
//console.log(this.task);
}
Plnkr
相关文章:
- 当包含另一个asp文件时,是否也包含所有引用的样式和脚本页面
- 使用clickToggle并在单击另一个元素时关闭元素
- 使用javascript将动态表从一个html页面打印到另一个html页
- 如何在android中使用phonegap将文件从一个文件夹移动/复制到另一个文件夹
- 如果使用 lodash 将属性存在于另一个对象中,则向对象添加属性
- 单击按钮后如何逐个调用分区,上一个分区将隐藏
- 另一个ajax调用中的Jquery ajax调用在for循环中没有按预期工作
- 从Rally获取一个特定的标记,以便计算另一个字段中的值
- 无法从jquery Mobile导航栏重定向到另一个页面
- 如何在单击按钮时显示一个分区,同时隐藏另一个分区
- Jquery.每个分区通过另一个分区内的分区
- 如何使用jquery使用另一个html文件的内容更新页面分区
- 将选中的复选框复制到另一个分区中
- 如何在单击图像时在另一个分区中显示相关内容
- 正在获取另一个分区中的span内容
- 如何将ngRepeat内容复制到另一个分区中
- 通过在另一个分区的谷歌地图信息窗口上单击按钮来更改分区的内容
- 将一个分区捕捉到另一个分区
- 将一个分区的子元素与所有关联的事件一起复制到另一个分区
- 将高度添加到另一个分区