2017-01-10 6 views
2

私はこれが私のテーブルで、私の最初のdivに私はショーのテーブルには、テーブルには、行

ng-hide="hidetable" 
を使用

<div class="table-responsive scroll" ng-hide="hidetable"> 
    <table id="table" class="table table-bordered table-condensed"> 
     <thead> 
       <tr class="bg-primary"> 
        <th><a href="#" class="erp-tb-a" ng-click="order('date')">Date</a></th> 
        <th><a href="#" class="erp-tb-a" ng-click="order('day')">Day</a></th> 
        <th><a href="#" class="erp-tb-a" ng-click="order('brandname')">BrandName</a></th> 
        <th><a href="#" class="erp-tb-a" ng-click="order('zone')">Zone</a></th> 
        <th><a href="#" class="erp-tb-a" ng-click="order('location')">Location</a></th> 
        <th><a href="#" class="erp-tb-a" ng-click="order('area')">Area</a></th> 
        <th><a href="#" class="erp-tb-a" ng-click="order('trainer')">TrainerName</a></th> 
        <th><a href="#" class="erp-tb-a" ng-click="order('program')">Program</a></th> 
        <th><a href="#" class="erp-tb-a" ng-click="order('trainingno')">Training Id</a></th> 
        <th><a href="#" class="erp-tb-a" ng-click="order('amount')">Amount</a></th> 
        <th><a href="#" class="erp-tb-a">Remark</a></th> 
        <th><a href="#" class="erp-tb-a" ng-click="order('sonvinid')">SonvinId</a></th> 
        <th><a href="#" class="erp-tb-a" ></a>Add</th> 
       </tr> 
       <tr class="bg-primary"> 
        <td><input type="text" class="erp-input" ng-model="search.date" /></td> 
        <td><input type="text" class="erp-input" ng-model="search.day" /></td> 
        <td><input type="text" class="erp-input" ng-model="search.brandname" /></td> 
        <td><input type="text" class="erp-input" ng-model="search.zone" /></td> 
        <td><input type="text" class="erp-input" ng-model="search.location" /></td> 
        <td><input type="text" class="erp-input" ng-model="search.area" /></td> 
        <td><input type="text" class="erp-input" ng-model="search.trainer" /></td> 
        <td><input type="text" class="erp-input" ng-model="search.program" /></td> 
        <td><input type="text" class="erp-input" ng-model="search.trainingno" /></td> 
        <td><input type="text" class="erp-input" ng-model="search.amount" /></td> 
        <td><input type="text" class="erp-input" /></td> 
        <td><input type="text" class="erp-input" ng-model="search.sonvinid" /></td> 
        <td></td> 
       </tr> 
      </thead> 
      <tbody> 
       <tr ng-repeat="p in getallcompany | orderBy:predicate:reverse | filter:search"> 
        <td>{{p.date}}</td> 
        <td>{{p.day}}</td> 
        <td>{{p.brandname}}</td> 
        <td>{{p.zone}}</td> 
        <td>{{p.location}}</td> 
        <td>{{p.area}}</td> 
        <td>{{p.trainer}}</td> 
        <td>{{p.program}}</td> 
        <td>{{p.trainingno}}</td> 
        <td>{{p.amount}}</td> 
        <td><input type="text" class="erp-input" style="width:90%; border:1px solid black;" ng-model="mdremarks" /></td> 
        <td>{{p.sonvinid}}</td> 
        <td><md-checkbox tabindex="0" area-label="none" role="checkbox" ng-click="clickcheckbox()"></md-checkbox></td> 
       </tr> 
      </tbody> 
    </table> 
    <div style="margin-bottom:20px"> 
     <a href="#" style="cursor:pointer;" class="btn btn-primary active">Generate Bill</a> 
     <a href="#" style="cursor:pointer;" class="btn btn-warning active">Back</a> 
    </div> 


</div> 

テーブルを持っているmvc5のangularjsでWebベースのアプリケーションを作成していますを持っている場合

今、テーブルが空の場合(つまりSQLから返される値に行がない場合はテーブルが非表示になり、戻り値に行がある場合)テーブルが表示されます。

私のコントローラとテーブルが

$http.get('/freezeservice.asmx/gettabledetails', { 
       params: { 
        log: log, 
        pm: pm, 
        comname: $scope.mdcompany, 
        mm: $scope.datemm, 
        yy: $scope.dateyy 
       } 
      }) 
       .then(function (response) { 
        { 
         $scope.getallcompany = response.data.info; 

        } 
       }); 

にページのロード時に非表示になり、これはこれは私が

私のデータを取得していますどのようになっているあなたの助けを必要とし

答えて

1

を使用することができますelse $scope.hidetable = false;これが実行されます

0

だけng-if条件を追加します。あなたのデータの長さが0、その後$scope.hidetable = true;これであれば、あなたのコントローラで

メイク変更

ここ
  $http.get('/freezeservice.asmx/gettabledetails', { 
       params: { 
        log: log, 
        pm: pm, 
        comname: $scope.mdcompany, 
        mm: $scope.datemm, 
        yy: $scope.dateyy 
       } 
      }) 
       .then(function (response) { 
        { 
         $scope.getallcompany = response.data.info; 
         console.log(response.data.info.length); 
         if(response.data.info.length===0) 
         { 
          alert('No Data Related To This'); 
          $scope.hidetable = true; 
         } 
         else if(response.data.info.length > 0) 
         { 
          $scope.hidetable = false; 
         } 
        } 
       }); 

、これを行うための最善の方法である私にとってng-showng-hide

<table ng-if="getallcompany.length"> 
+0

ng-if = "getallcompany.length> 0"のようなブール式でなければなりませんか? –

+0

これもうまくいきます –

関連する問題