我想使用angular来对表头和正文进行一些验证

时间:2015-12-12 12:23:06

标签: javascript angularjs html5

我想对表进行验证,直到任何内容被删除到任何列单元格用户不应该删除该单元格标题上的任何内容。但我无法弄清楚如何在每个列的表头和单元格之间建立连接。

这是我的控制者:

angular.module('myApp', []).controller('myCtrl', function($scope) {
      $scope.tableSelection = {};
      $scope.tableInputColSelection={};//added for ccgbase 2251
    $scope.tableOutputColSelection={};
    $scope.output_columns=[1];
    $scope.input_columns=[1];
      $scope.data = [];
      $scope.rows = [1, 2, 3]; 

      $scope.removeSelectedItems = function(){
       // $scope.rows = $scope.rows.filter(function(item, index){
         // return !($scope.tableSelection[index] !== undefined && $scope.tableSelection[index]); 
       if(Object.keys($scope.tableSelection).length>0){
                                 for (var i = $scope.rows.length - 1; i >= 0; i--) {
                                  if ($scope.tableSelection[i]) {
                                    //delete row from data
                                      if($scope.rows.length>1){
                                      $scope.rows.splice(i, 1);
                                      }

                                     delete $scope.tableSelection[i];
                                }
                                 }
                                }
                                if(Object.keys($scope.tableInputColSelection).length>0){
                                    for (var i = $scope.input_columns.length - 1; i >= 0; i--) {
                                      if ($scope.tableInputColSelection[i]) {
                                        //delete row from data
                                          if($scope.input_columns.length>1){
                                            $scope.input_columns.splice(i, 1);
                                          }
                                        delete $scope.tableInputColSelection[i];
                                      }
                                }

                                }
                                if(Object.keys($scope.tableOutputColSelection).length>0){
                                    for (var i = $scope.output_columns.length - 1; i >= 0; i--) {
                                      if ($scope.tableOutputColSelection[i]) {
                                        //delete row from data
                                          if($scope.output_columns.length>1){
                                            $scope.output_columns.splice(i, 1);
                                          }
                                        delete $scope.tableOutputColSelection[i];
                                      }
                                    }
                                }





      }
      $scope.addNewRow = function() {
        //set row selected if is all checked

        $scope.rows.push({
          id: $scope.rows.length,
          name: 'Name ' + $scope.rows.length
        });
      };
     $scope.addInput= function () {
                                for(var i=0;i<1;i++){
                                    $scope.input_columns.push({
                                        id:$scope.input_columns.length,
                                        name: 'Name'+$scope.input_columns.length
                                    });
                                    }
                            },

         $scope.addOutput= function () {
                                for(var i=0;i<1;i++){
                                    $scope.output_columns.push({
                                        id:$scope.output_columns.length,
                                        name:'Name'+$scope.output_columns.length
                                    });
                                    }
                            }

This is the plunker link:
http://plnkr.co/edit/IpUjN5wiwv3q8XT2y864?p=preview

我想要执行更多验证,但为此我需要弄清楚如何获取特定列的条目,包括所有列的标题和单元格。

1 个答案:

答案 0 :(得分:0)

我不知道复杂性是你的对象。但以下想法可能会对您有所帮助。

如果数组如下,则可以轻松进行验证。

  

Headers = [Header1,Header2,Header3,Header4];

     

Header1ColumnValues =这些是值数组。列
  =这些是值数组。

     

列=   [[header1Columnvalues],[header2ColumnValues],[Header3ColumnValues],[Header4ColumValues]];

如果要访问第1列和第1列,则可以访问

  

标题[0],列[0],用于2n,标题[1],列[1]