ng-options中的值属性不是正确的数据类型

时间:2015-07-23 18:51:03

标签: javascript angularjs numbers

我的前端应用程序中有一个ng-options选择,如下所示:

 <select  ng-model="calc.details.option" name="royaltyOption"
     ng-options="obj.label for obj in royaltyOptions track by obj.value">
 </select>

在页面的控制器中:

$scope.royaltyOptions = [{ "value": 6.25, "label": "Yes" }, { "value": 0.00, "label": "No" }];

在提交表单0.006.25后,所需的行为是将数值发送到后端。我得到的是NaN - 而不是数字。当我console.log()实际发回的内容时,我得到[object Object]"

如何将发送的值作为数字?我觉得我已经遵循了文档和我在网上找到的其他StackOverflow /论坛讨论中提到的确切语法。

1 个答案:

答案 0 :(得分:2)

你正在传递物体。您可以在控制器中使用。这是来自doc

的内容
  

请勿在同一表达式中使用select as和track by。他们不是   旨在合作。

你应该像

一样使用它
ng-options="obj.label for obj in royaltyOptions track by obj.value">

在控制器中

console.log($scope.calc.details.option.value)