Angularjs:使用ng-option时如何在选择中包含空选项

Posted

技术标签:

【中文标题】Angularjs:使用ng-option时如何在选择中包含空选项【英文标题】:Angularjs: How to include empty option in select when using ng-option 【发布时间】:2013-03-17 00:43:34 【问题描述】:

当我使用 ng-option 提供不包含空选项的预定义选项列表时,如何在开头添加空选项?

玉中的一个例子

select(ng-model="property.Value", ng-options="item.Value as item.Name for item in property.Choices")

【问题讨论】:

【参考方案1】:

只需在选择内添加一个具有空值的选项。

select(ng-model="property.Value", ng-options="item.Value as item.Name for item in property.Choices")
  option(value="")

这是一个例子 - http://jsfiddle.net/sseletskyy/uky9m/1/

【讨论】:

如果数据来自例如服务怎么办?除此之外,我通常会尽量避免控制器中特定于视图的内容。如果在视图中有一种方法可以做到这一点,那就太好了。也许使用指令?! 如果您选择一个选项然后想改回空选项,则无法正常工作。 @dang 请在它不起作用时提供一个示例,例如这是我的另一个例子 - codepen.io/sseletskyy/pen/KzYaQq @SergeSeletskyy dang 指的是您提供的小提琴,第一个带有“默认显示空选项”的示例不能改回空白【参考方案2】:

只需修改 angular 中的 property.choices 数组。

$scope.property.Choices.splice(0, 0, "id":"0","Name":"Richard");

【讨论】:

【参考方案3】:

这只是通过修改对象对我有用

angular.extend('请选择' : '',objectName)

【讨论】:

以上是关于Angularjs:使用ng-option时如何在选择中包含空选项的主要内容,如果未能解决你的问题,请参考以下文章

angularjs选择需要不工作的ng-options

ng-options 如何设置第一个选择总是空白

使用 AngularJS 的 ng-options 进行选择

使用 AngularJS 的 ng-options 进行选择

如何使用代码中的ng-options更改选择中的值?

编写自定义指令以在 AngularJS (TypeScript) 中向 ng-options 添加工具提示