gpt4 book ai didi

javascript - ngOptions 可以调用一个函数来获取显示文本吗?

转载 作者:数据小太阳 更新时间:2023-10-29 04:03:40 26 4
gpt4 key购买 nike

我有一个 select 标签,我使用 AngularJS 将其绑定(bind)到广播电台对象数组。我的对象具有以下属性:

{
id: 'WXYZ',
name: 'Radio Station Name (optional)',
frequency: '89.7 FM'
}

我希望下拉列表中的每个元素都显示“{id} - {name} - {frequency}”作为显示文本,但由于 name 属性是可选的,我想避免在对象没有名称值的事件。

我能够让它工作:

<select ng-model="StationPreference" ng-options="s.id+ ' - ' + s.name + ' - ' + s.frequency for s in stations">
<option value="">-- select --</option>
</select>

在 ng-options 中调用函数的规则/指南/最佳实践是什么?我想做一些类似 getDisplayText(s) 的事情——是什么让表达式“对 Angular 有效”?函数是否必须在范围内定义?它可以是任何外部定义的函数吗?这是实现所需功能的最佳方法吗?

最佳答案

这对我有用:

<select ng-model="myForm.car"
ng-options="obj.id as genName(obj.id,obj.name) for obj in myForm.options">
<option value="">Select...</option>
</select>


$scope.myForm.options = [
{ id : "nissan", name: "Nissan" },
{ id : "toyota", name: "Toyota" },
{ id : "fiat" , name: "Fiat" }
];

$scope.genName = function(id,name) {
return id + ' ' + name;
}

关于javascript - ngOptions 可以调用一个函数来获取显示文本吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21785021/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com