Ng-options 选择值作为 int 而不是字符串
Ng-options selecting value as a int instead of a string
我有一个对象数组
usage: [{label: 'Main', value: '30' },{ label: 'Second', value: '27' },{ label: 'Third', value: '50' }];
这就是我使用 ng-options 的方式
<select class="Input" ng-model="myCtrl.data.usages" ng-options="usage.value as usage.label for usage in myCtrl.data.usages">
它似乎有效,因为它 select 是正确的值。但是它 select 是一个字符串。有没有办法让它 select / 解析为整数?因此,它会保存为 27
而不是 '27'
你可以为此制作一个filter。这将允许您根据需要解析和操作该值。观察下面的例子...
app.filter('num', function() {
return function(input) {
return parseInt(input, 10);
};
});
<select
ng-options="(usage.value | num) as usage.label for usage in myCtrl.data.usages">
</select>
JSFiddle Link - 演示
我有一个对象数组
usage: [{label: 'Main', value: '30' },{ label: 'Second', value: '27' },{ label: 'Third', value: '50' }];
这就是我使用 ng-options 的方式
<select class="Input" ng-model="myCtrl.data.usages" ng-options="usage.value as usage.label for usage in myCtrl.data.usages">
它似乎有效,因为它 select 是正确的值。但是它 select 是一个字符串。有没有办法让它 select / 解析为整数?因此,它会保存为 27
'27'
你可以为此制作一个filter。这将允许您根据需要解析和操作该值。观察下面的例子...
app.filter('num', function() {
return function(input) {
return parseInt(input, 10);
};
});
<select
ng-options="(usage.value | num) as usage.label for usage in myCtrl.data.usages">
</select>
JSFiddle Link - 演示