2017-02-07 2 views
0

У меня есть такой тип условия:Как ParseInt в angularjs выражении

<td ng-repeat="sal in name.salaries" 
    ng-if="name.avalue>sal.annual_value"> 
     Value must be less than or equal to Balance Amount 
</td> 

Что происходит в реальном сценарии

Для Ев. name.value=1200 sal.annual_value=42 как его не parseInt вот почему его рассматривает 42 > 1200.

Как я могу parseInt() в выражении AngularJS?

+0

name.avalue в нг-если не должен он быть name.value как в вашем, например.? –

+0

просто используйте простой 'Number (name.value)' –

ответ

4

Я хотел бы использовать область видимости функции, чтобы сделать эту проверку:

{...} 
scope.checkSalaries = function(avalue, annual_value) { 
    return avalue > annual_value; 
} 
{...} 

и в html:

<td ng-repeat="sal in name.salaries" 
    ng-if="checkSalaries(name.avalue,sal.annual_value)"> 
     Value must be less than or equal to Balance Amount 
</td> 
+0

Его работа. Спасибо, mann. @MihailStancescu – Mohammed

4

Вы можете использовать parseInt в вашей ng-if:

<td 
    ng-repeat="sal in name.salaries" 
    ng-if="parseInt(name.avalue)>parseInt(sal.annual_value)"> 
     Value must be less than or equal to Balance Amount 
</td> 

Или вы можете создать функцию, чтобы проверить это в вашем контроллере:

<td 
    ng-repeat="sal in name.salaries" 
    ng-if="isGreater(name.avalue, sal.annual_value)"> 
     Value must be less than or equal to Balance Amount 
</td> 

$scope.isGreater = function(val1, val2) { 
    return parseInt(val1) > parseInt(val2); 
}; 
+0

второй работает @ Magicpro.fr – Mohammed

1

вы также можете попробовать:

<td 
    ng-repeat="sal in name.salaries" 
    ng-show="isGreater(name.avalue, sal.annual_value)"> 
     Value must be less than or equal to Balance Amount 
</td> 

$scope.isGreater = function(val1, val2) { 
    return parseInt(val1) > parseInt(val2); 
}; 
2

Если вы хотите использовать parseInt метод в представлении можно определить Number $ область видимости в контроллере, а затем пользователь его встроенный в методе parseInt() в представлении.

например.

Контроллер:

$scope.number = Number; 

Вид:

<td ng-repeat="sal in name.salaries" ng-if="number.parseInt(name.avalue)>number.parseInt(sal.annual_value)"> 
Value must be less than or equal to Balance Amount</td> 
+0

работал как шарм, спасибо – ganesh

Смежные вопросы