如何在 AngularJS 的表格单元格中插入多个值
how to insert more than one value in table cell in angularjs
在下表中,特定日期可以有多个列表。因此,对于列表列,给定日期可以有多个列表。
我可以在单个单元格中插入多个值,但它会移动我在其中插入多个值的行,请查看 DEMO。
示例:表
日期...列表
2016/12/1 .... python, angularjs
13/1/2016.....java, html
数据:
$scope.todolists = [{
date: '12/1/2016',
list: {python, angularjs}
}, {
date: '13/1/2016',
list: {java, html}
}];
视图:
<tbody>
<tr ng-repeat="todolist in todolists" >
<td>{{todolist.date}}</td>
<td ng-repeat="list in todolist">{{subject}}</td>
</tr>
</tbody>
我尝试在ng-repeat
里面ng-repeat
但它不起作用。所以我的问题是如何在表格的单个单元格中插入多个值。
你的引用是错误的。
<tbody>
<tr ng-repeat="todolist in todolists" >
<td>{{todolist.date}}</td>
<td ng-repeat="list in todolist.list">{{list}}</td>
</tr>
</tbody>
或者,最好是,
<tbody>
<tr ng-repeat="todolist in todolists" >
<td>{{todolist.date}}</td>
<td>
<span ng-repeat="list in todolist.list">
{{list + ($last ? "" : ", ") }}
</span>
</td>
</tr>
</tbody>
- 您的
JSON
无效。如果要存储没有属性的值,则需要使用Array
而不是Object
。此外,如果值string
则需要用逗号将它们包装起来,例如:['val1', 'val2', ...];
- 您可以在
ng-repeat
内部执行ng-repeat
,但您需要迭代正确的属性todolist.list
。 - 如果模型中没有属性
subject
,则无法使用{{subject}}
。所以当你做ng-repeat
时,你需要使用{{list}}
,比如ng-repeat="list in todolist.list"
。
完整代码:
angular.module('app', []).
controller('ctrl', function($scope) {
$scope.todolists = [{ date: '12/1/2016', list: ['python', 'angularjs'] }, { date: '13/1/2016', list: ['java', 'html'] }];
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="app" ng-controller="ctrl">
<table>
<tr ng-repeat="todolist in todolists">
<td>{{todolist.date}}</td>
<td ng-repeat="list in todolist.list">{{list}}</td>
</tr>
</table>
</div>
您的数据未正确声明。它应该是:
$scope.todolists = [{
date: '12/1/2016',
list: [
'python',
'angularjs'
]
}, {
date: '13/1/2016',
list: [
'java',
'html'
]
}];
请注意 python 等周围的 '',列表应该是列表 => [] 而不是 {}。
一个不错的方法是编写自定义过滤器:
angular.module("myApp", [])
.filter('nicelist', function() {
return function(input) {
if (input instanceof Array) {
return input.join(",");
}
return input;
}
});
然后,您可以使用:
<table>
<tr ng-repeat="todolist in todolists">
<td>{{todolist.date}}</td>
<td>{{todolist.list | nicelist}}</td>
</tr>
</table>
这是一个工作小提琴。
相关文章:
- 如何在 React 中将 html 表单元格数据动态插入到具有动态标题的表中
- 为什么使用插入单元格创建单元格这么慢
- 如何在 AngularJS 的表格单元格中插入多个值
- 使用数据表 jQuery 将数据插入到特定列单元格中
- 将多个具有相同名称的文本输入插入到 MySql 中的一个单元格中
- 使用Javascript在每个表单元格中插入一些内容
- 在表格单元格的开头插入复选框
- 如何读取html表中复选框的值,该表是作为内部html动态插入到表单元格中的
- javascript动态生成表格时,如何在表格单元格中插入空格
- 使用谷歌脚本,如何将图像插入表格单元格
- 在 Javascript 中将图像插入表格单元格
- 如何在表格单元格中插入输入字段
- 当将锚标记插入到表的动态生成的单元格中时,锚标记无法被识别
- 向数据表单元格插入按钮失败
- 在表的特定列中插入单元格
- 用javascript插入单元格,然后将复选框插入其中
- 如何根据用户所在的页面将值插入到一个单元格的mysql数据库中
- 使用javascript在表格单元格中插入数组值
- 通过Javascript在html中的表格单元格中插入一个选择框
- 如果单元格为空,请在此单元格中插入0