更改Angular中选择菜单中初始空白选项的文本



我有一个使用ng模型的选择菜单和一个值列表,比如:

<select ng-model="$ctrl.ngModel"
id = "{{$ctrl.idPrefix}}-select"
ng-change="$ctrl.change()">
<option ng-repeat="setting in $ctrl.values track by setting[$ctrl.valuePropertyName]"
ng-value="setting[$ctrl.valuePropertyName]">
{{ setting[$ctrl.textPropertyName] }}
</option>
</select>

当ng模型值在$ctrl.Values列表中时,这一切都很好。然而,当它不在时,我会自动插入一个默认选项,并显示一个空白文本。我知道我可以初始化属性值以确保不会发生这种情况。然而,我真正想做的是将这个默认选项的显示文本更改为类似"Please select"或类似的内容。有没有办法设置为该默认选项显示的文本?

您可以通过检查数组是否为空或ngModel是否为空/未定义来管理此问题

如样品

<select ng-model="$ctrl.ngModel"
id = "{{$ctrl.idPrefix}}-select"
ng-change="$ctrl.change()">
<option value="" ng-if="$ctrl.values == null || $ctrl.values.length == 0 || $ctrl.ngModel == null"> Please select ... </option>
<option ng-repeat="setting in $ctrl.values track by setting[$ctrl.valuePropertyName]"
ng-value="setting[$ctrl.valuePropertyName]">
{{ setting[$ctrl.textPropertyName] }}
</option>
</select>

最新更新