Search code examples
javascriptangularjsangularjs-scopeng-grid

Angular js Grid Validation


I want to add validation, such that those cells of my grid, which have age more than 40, will show in red color?

     <html ng-app="myApp">  
     <head lang="en">
     <meta charset="utf-8">
     <title>Getting Started With ngGrid Example</title>  
     <link rel="stylesheet" type="text/css" href="ng-grid.css" />
    <link rel="stylesheet" type="text/css" href="style.css" />
    <script type="text/javascript" src="jquery-1.8.2.js"></script>
    <script type="text/javascript" src="angular.js"></script>
     <script type="text/javascript" src="ng-grid-1.3.2.js"></script>
     <script type="text/javascript">
     var app = angular.module('myApp', ['ngGrid']);
         app.controller('MyCtrl', function($scope) {
                 $scope.myData = [{name: "Moroni", age: 50},
                 {name: "Tiancum", age: 43},
                 {name: "Jacob", age: 27},
                 {name: "Nephi", age: 29},
                 {name: "Enos", age: 34}];
        $scope.gridOptions = { 
           data: 'myData',
       enableCellSelection: true
                         };
            });
          </script>
             </head>
    <body ng-controller="MyCtrl">
       <div class="gridStyle" ng-grid="gridOptions"></div>
    </body>
    </html>

How Can I do that? Please help me?


Solution

  • You can add a cell template to your grid

     $scope.gridOptions = { 
         data: 'myData',
         enableCellSelection: true
         columnDefs: [{cellTemplate: '<div ng-class="{red: row.getProperty(col.field) > 40}"><div class="ngCellText">{{row.getProperty(col.field)}}</div></div>'}]
    };
    

    See the Template Examples section of the docs for more.