2016-08-19 4 views
0

AngularJSをフロントエンドとして使用しているアプリケーションでMEANスタックを使用しています。 inclusive値が非表示にする必要がある必要がありますので、exclusiveがfalseで、私はng-hideを使用している、値も隠さchecked or trueである場合、私はMy Plunker .. hideに値をしようと、あまりにも適切なtotalsum値を取得しています。しかし合計合計値も隠れた排他的値のように表示されますので、値の一部が隠されている場合、私は期待しています。の場合: - inclusiveが真の場合exclusive値は...その後、排他的TOTALSUM値が388がplunkerを見て、同じ感謝のために私を助けてください....... 499が好きではありませんする必要がありますhiddenangularjsでng-hideを使用している間にtotalsum問題を解決するにはどうすればよいですか?

コントローラーです: - 独占TOTALSUM機能については : -

.filter('totalSumPriceQty', function() { 
    return function (data, key1, key2) {   
     if (angular.isUndefined(data) && angular.isUndefined(key1) && angular.isUndefined(key2)) 
      return 0; 

     var sum = 0; 
     angular.forEach(data,function(v,k){ 
      sum = sum + (parseInt(v[key1]) - parseInt(v[key2])/100); 
     }); 
     return sum; 
    } 
}) 

    .filter('totalSumPriceQtytwo', function() { 
     return function (data, key1, key2) {   
     if (angular.isUndefined(data) && angular.isUndefined(key1) && angular.isUndefined(key2)) 
      return 0; 
       var sum = 0; 
       angular.forEach(data,function(v,k){ 
        sum = sum + (parseInt(v[key1]) * parseInt(v[key2])/100); 
      }); 
     return sum; 
     } 
    }) 

私のHTML: -

<td ><p ng-hide="mani.service_tax==false">{{(mani.invoice_quantity - mani.invoice_value_fob/100)}}</p></td> 

    <td ><p ng-hide="mani.exclusive==false">{{(mani.invoice_quantity * mani.invoice_value_fob/100)}}</p></td> 

TOTALSUM HTML: - 私は参考のためにPlunkerを作成している

<td>{{resultValue | totalSumPriceQty:'invoice_quantity':'invoice_value_fob'}}</td> 

    <td>{{resultValue | totalSumPriceQtytwo:'invoice_quantity':'invoice_value_fob'}}</td> 

: - My Plunker

もう一つの例: -

ここでは1つの包括的なトランザクションがtrueですもう一つは偽です...私たちは偽の値を隠すためにng-hideを使っています... totalsumは答えのように真の値を計算する必要があります34 .....いいえ127 pls助けてください...

各フィルタについて

答えて

1

は、フォークを参照してくださいあなたは

filter('totalSumPriceQty', function() { 
    return function (data, key1, key2) {   
     if (angular.isUndefined(data) && angular.isUndefined(key1) && angular.isUndefined(key2)) 
      return 0; 

     var sum = 0; 
     angular.forEach(data,function(v,k){ 
      if(v.service_tax){ 
      sum = sum + (parseInt(v[key1]) - parseInt(v[key2])/100); 
      } 
     }); 
     return sum; 
    } 
}) 

filter('totalSumPriceQtytwo', function() { 
    return function (data, key1, key2) {   
     if (angular.isUndefined(data) && angular.isUndefined(key1) && angular.isUndefined(key2)) 
      return 0; 

     var sum = 0; 
     angular.forEach(data,function(v,k){ 
      if(v.exclusive){ 
      sum = sum + (parseInt(v[key1]) * parseInt(v[key2])/100); 
      } 
     }); 
     return sum; 
    } 
}) 

を隠すために使用するデータを除外するために同じロジックを追加plnkr

関連する問題