算术计算后无法在ng-model中设置值

时间:2017-06-19 09:47:42

标签: html angularjs

我正在创建一个过滤器,用户可以根据参数和选项选择他周围物业的位置。将选择多个东西&基于此我正在进行算术计算以找到最低预算和最大预算,但是当我试图根据状态参数设置值(即算术计算后)&过滤参数。我无法设定价值,所以任何人都可以让我知道我在哪里出错。我在我的游戏机中获得了适当的价值

我的代码如下:

My Controller JS中的代码:

var minimumBudget = $stateParams.locationMinBudget * $stateParams.propertyDetails;
var maximumBudget = $stateParams.locationMaxBudget * $stateParams.propertyDetails;

console.log("Min Budget :%O", minimumBudget);
console.log("Max Budget :%O", maximumBudget);
$scope.minBudget = minimumBudget;
$scope.maxBudget = maximumBudget;

HTML:

<div class="form-group">
                        <select id="minBudget" class="form-control" ng-model="minBudget" required="required">
                            <option value="">Min Budget</option>
                            <option ng-repeat="minBudgetObject in minBudgetList" value="{{minBudgetObject.price}}" >&#8377; {{minBudgetObject.description}}</option>
                        </select>
 </div>
 <div class="form-group">                            
                        <select id="maxBudget" class="form-control" ng-model="maxBudget" required="required">
                            <option value="">Max Budget</option>
                            <option ng-repeat="maxBudgetObject in maxBudgetList" value="{{maxBudgetObject.price}}" >&#8377; {{maxBudgetObject.description}}</option>
                        </select>
</div>

所以当我在没有算术计算的情况下以相反的方式做同样的事情时,这件事情很有效。但是这里没有弄错。

感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

默认情况下,$ stateParams.propertyDetails是字符串,当你执行ng-repeat时,它会重复每个字符和它。但是当你进行算术运算时,它就变成了数字而且无法重复它。

为解决这个问题,minimumBudget和maximumBudget都应该是一个数组