通过点击另一个数据表中的一行来过滤一个表中的数据
Filtering data in one table by clicking on a row in another datatables AngularJS
我有两个AngularJS数据表显示。第一个是县,第二个是镇。我需要做的是通过点击第一个表中的一行来过滤第二个表中的数据。例如,当我单击第一个表中包含Orange County的行时,第二个表中应该只过滤该县的城镇,而不是其他城镇。如有任何建议和指点,我将不胜感激。
这是我用来显示表格的代码:
<div>
<datatables-lazy columns="countiesColumns" options="countiesOptions" class="grid"></datatables-lazy>
</div>
$scope.countiesColumns = [
DTColumnBuilder.newColumn('name').withTitle(localizationService.getLabel('ime')),
DTColumnBuilder.newColumn('code').withTitle(localizationService.getLabel('kod')),
DTColumnBuilder.newColumn(null).withTitle('Akcije').notSortable().renderWith(actionsHtml)
];
$scope.countiesOptions = DTOptionsBuilder.fromFnPromise(function () { return settingsService.getCounties(); })
.withPaginationType('full_numbers')
.withOption('createdRow', createdRow);
function createdRow(row) {
$compile(angular.element(row).contents())($scope);
}
下面是从数据库获取数据的服务:
getCounties: function () {
var deferred = $q.defer();
$http.get(applicationSettings.humanResourcesAPIUrl + 'settings/getCountyList')
.success(function (response) { deferred.resolve(response); })
.error(function (err, status) { deferred.reject(err); });
return deferred.promise;
},
getCounty: function (id) {
var deferred = $q.defer();
$http.get(applicationSettings.humanResourcesAPIUrl + 'settings/getCounty?countyId=' + id)
.success(function (response) { deferred.resolve(response); })
.error(function (err, status) { deferred.reject(err); });
return deferred.promise;
},
您需要在第一个表上设置ng-click
,以便它通过函数将所选城镇的值分配给变量。
。ng-click="setTown(town)"
$scope.activeTown = "";
$scope.setTown = function(town) {
$scope.activeTown = town;
}
然后在第二个表中,您所需要做的就是过滤这个activeTown变量。
<tr ng-repeat="place in places | filter:activeTown">
下面是一个例子http://plnkr.co/edit/os5X3ugAZOVC5v1zn0tF?p=preview
相关文章:
- 相对于角度控制器中的另一个阵列过滤阵列项目
- 我正在验证一个联系人表单.我是不是过滤太多了
- 角度 UI 选择仅过滤一个字段
- 我能用罗达斯过滤一个计数吗
- 在javascript中过滤一个对象数组
- 过滤一个多维数组的另一个数组在javascript
- 用样式过滤一个js查询
- 过滤一个geojson层在传单不工作
- 我如何使用lodash过滤一个嵌套的值数组对象
- 过滤一个html页面,所以只有某些标签显示
- 为什么过滤一个新的JSON对象会导致旧的JSON对象自我更新?
- 如何过滤一个表
- 使用另一个数组过滤一个元素数组
- 使用ng-repeat时只过滤一个或多个元素
- 如何过滤一个字符串与多个字在任何给定的顺序为javascript
- 你能根据上下文过滤一个现有的jquery对象吗
- 使用javascript reduce来过滤一个对象数组,以找到计算出的最低统计数据
- 通过点击另一个数据表中的一行来过滤一个表中的数据
- Ng-options在另一个下拉列表中按值过滤一个数据
- 根据另一个值数组过滤一个对象数组,返回一个空列表