我的前端应用程序中有一个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.00
或6.25
后,所需的行为是将数值发送到后端。我得到的是NaN
- 而不是数字。当我console.log()
实际发回的内容时,我得到[object Object]"
。
如何将发送的值作为数字?我觉得我已经遵循了文档和我在网上找到的其他StackOverflow /论坛讨论中提到的确切语法。
答案 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)