Javascript 过滤器不';datagrid AngularJS中的t刷新
我正在尝试使用这个库()使用Angular JS按名称进行过滤。问题是当我搜索时,它不会刷新!仅当我单击“分页”以更改每页的项目时 我的HTML:(我想是有变化的东西)Javascript 过滤器不';datagrid AngularJS中的t刷新,javascript,angularjs,datagrid,Javascript,Angularjs,Datagrid,我正在尝试使用这个库()使用Angular JS按名称进行过滤。问题是当我搜索时,它不会刷新!仅当我单击“分页”以更改每页的项目时 我的HTML:(我想是有变化的东西) 您需要做的就是正确初始化网格 将过滤器输入引用到此函数: ng-change="gridActions1.filter()" 您还可以在控制器中定义gridActions1(但它似乎不是强制性的) 然后需要在datagrid初始化中定义gridActions1: grid-actions="gridActions1" 检查示
您需要做的就是正确初始化网格 将过滤器输入引用到此函数:
ng-change="gridActions1.filter()"
您还可以在控制器中定义gridActions1(但它似乎不是强制性的)
然后需要在datagrid初始化中定义gridActions1:
grid-actions="gridActions1"
检查示例:(搜索“gridActions”)
请注意:
网格操作:控制器中的对象,具有更新网格的功能。您可以在控制器中传递字符串或创建空对象。使用此对象调用指令的方法:sort()、filter()、refresh()
您甚至可以使用自定义过滤器:
工作示例:Thax等待回复!是的,我的div(grid actions=“gridActions”)中没有引用gridActions1,所以我将gridActions1改为gridActions,它可以工作!很酷,很乐意帮忙。:)
var app = angular.module('myModule', ['ui.bootstrap', 'dataGrid', 'pagination']);
app.controller('ListaComprasController',['$scope', function($scope) {
$scope.form = true;
$scope.item = {};
$scope.pagingOptions = {
pageSizes: [5, 10, 20, 100],
pageSize: 3,
currentPage: 1
};
$scope.itens = [
{nombre: 'Leite', telefono: 212122, descripcion: "tadsasasdas",especialidades:"tarea",dirreccion:"Siempre Viva 920",horarioDesde:"19:00",horarioHasta:"22:00",nombreCom:"Tssa",telefonoCom:"223123",checkCom:true,emailCom:"tesr@sdasad.com"},
{nombre: 'Adssad', telefono: 3410220, descripcion: "tadsasasdas",especialidades:"tarea",dirreccion:"Siempre Viva 920",horarioDesde:"19:00",horarioHasta:"22:00",nombreCom:"Tssa",telefonoCom:"223123",checkCom:false,emailCom:"tesr@sdasad.com"},
{nombre: 'Adssad', telefono: 3410220, descripcion: "tadsasasdas",especialidades:"tarea",dirreccion:"Siempre Viva 920",horarioDesde:"19:00",horarioHasta:"22:00",nombreCom:"Tssa",telefonoCom:"223123",checkCom:false,emailCom:"tesr@sdasad.com"},
{nombre: 'Adssad', telefono: 3410220, descripcion: "tadsasasdas",especialidades:"tarea",dirreccion:"Siempre Viva 920",horarioDesde:"19:00",horarioHasta:"22:00",nombreCom:"Tssa",telefonoCom:"223123",checkCom:false,emailCom:"tesr@sdasad.com"},
{nombre: 'Adssad', telefono: 3410220, descripcion: "tadsasasdas",especialidades:"tarea",dirreccion:"Siempre Viva 920",horarioDesde:"19:00",horarioHasta:"22:00",nombreCom:"Tssa",telefonoCom:"223123",checkCom:false,emailCom:"tesr@sdasad.com"},
{nombre: 'Leite', telefono: 212122, descripcion: "tadsasasdas",especialidades:"tarea",dirreccion:"Siempre Viva 920",horarioDesde:"19:00",horarioHasta:"22:00",nombreCom:"Tssa",telefonoCom:"223123",checkCom:true,emailCom:"tesr@sdasad.com"}
];
$scope.gridOptions = {
data: $scope.itens, //required parameter - array with data
//optional parameter - start sort options
/*sort: {
predicate: 'nombre',
direction: 'asc'
}*/
};
$scope.$watch(
function() {
return {
currentPage: $scope.pagingOptions.currentPage,
pageSize: $scope.pagingOptions.pageSize
};
},
function(newVal, oldVal) {
// Reset to page 1 when the page size changes
if (newVal.pageSize !== oldVal.pageSize) {
$scope.pagingOptions.currentPage = 1;
}
//$scope.fillGrid($scope.pagingOptions.currentPage, $scope.pagingOptions.pageSize);
},
true);
$scope.adicionaItem = function () {
$scope.itens.push(
{
nombre: $scope.item.nombre,
telefono: $scope.item.telefono,
descripcion: $scope.item.descripcion,
especialidades: $scope.item.especialidades,
dirreccion: $scope.item.dirreccion,
horarioDesde: $scope.item.horarioDesde,
horarioHasta: $scope.item.horarioHasta,
checkCom: $scope.item.checkCom,
nombreCom: $scope.item.nombreCom,
apellidoCom: $scope.item.apellidoCom,
telefonoCom: $scope.item.telefonoCom,
emailCom: $scope.item.emailCom
}
);
$scope.item.produto = $scope.item.quantidade = '';
toastr.success("Item adicionado com sucesso.");
$scope.form = true;
};
$scope.addItem = function () {
$scope.form = false;
};
$scope.editarItem = function(index){
$scope.form = false;
$scope.item = $scope.itens[index];
$scope.edit = true;
};
$scope.applyChanges = function(index){
$scope.item = {};
$scope.form = false;
$scope.edit = false;
toastr.success("Item alterado com sucesso.");
};
$scope.CancelarItem = function(index){
$scope.edit = false;
$scope.form = true;
$scope.item = {};
};
$scope.deleteItem = function(row){
var index = $scope.gridOptions.data.indexOf(row.entity);
$scope.gridOptions.data.splice(index, 1);
console.log(index);
//$scope.itens.splice(index, 1);
toastr.success("Item removido com sucesso.");
};
}]);
ng-change="gridActions1.filter()"
$scope.gridActions1 = {};
grid-actions="gridActions1"